Sugarcrm 在SuiteRM的子面板上自定义选择选项

Sugarcrm 在SuiteRM的子面板上自定义选择选项,sugarcrm,suitecrm,Sugarcrm,Suitecrm,我想知道是否有办法从SuiteRM中的subpanel men定制select选项 将删除模块子面板的所有一对多关系,而对于多对多,则需要将其重命名为“将模块1关联到模块2” 我能做到这一点吗?所有模块都要做到这一点。要删除按钮: 假设目标模块和领导模块具有一对多关系。现在,线索将显示在Traget Record Detail视图下。所以,如果我们想从潜在客户的子面板中删除潜在客户的选择和创建。然后我们可以从以下代码中隐藏这两个按钮: 在中查找关系文件 custom/Extension/modu

我想知道是否有办法从SuiteRM中的subpanel men定制select选项

将删除模块子面板的所有一对多关系,而对于多对多,则需要将其重命名为“将模块1关联到模块2”


我能做到这一点吗?所有模块都要做到这一点。

要删除按钮:

假设目标模块和领导模块具有一对多关系。现在,线索将显示在Traget Record Detail视图下。所以,如果我们想从潜在客户的子面板中删除潜在客户的选择和创建。然后我们可以从以下代码中隐藏这两个按钮:

在中查找关系文件

custom/Extension/modules/Prospects/Ext/Layoutdefs/prospects_leads_1_Prospects.php
删除此关系代码中注释的注释代码,如下所示, 然后修复和重建

$layout_defs[“Prospects”][“subpanel_setup”][‘prospects_leads_1’] = array (
‘order’ => 100,
‘module’ => ‘Leads’,
‘subpanel_name’ => ‘default’,
‘sort_order’ => ‘asc’,
‘sort_by’ => ‘id’,
‘title_key’ => ‘LBL_PROSPECTS_LEADS_1_FROM_LEADS_TITLE’,
‘get_subpanel_data’ => ‘prospects_leads_1’,
‘top_buttons’ =>
array (

/*
0 =>
array (
‘widget_class’ => ‘SubPanelTopButtonQuickCreate’,
),
1 =>
array (
‘widget_class’ => ‘SubPanelTopSelectButton’,
‘mode’ => ‘MultiSelect’,
),
*/

),

);
此外,您可以检查labelvalue,然后相应地更改语言文件中的标签

在系统级重命名按钮: 将以下语言标签放入
custom/include/language/en_us.lang.php

$GLOBALS['app_strings']['LBL_SELECT_BUTTON_LABEL'] = 'your label'; 

这将更改所有对象的标签,但如果您想通过某些逻辑更改标签,请参阅文件:
include\generic\SugarWidgets\SugarWidgetSubPanelTopSelectButton.php
,它具有
公共函数getDisplayName()
,您可以在其中添加一些逻辑以在特定条件下更改该标签。希望你能自己编写这个逻辑。另外,在不需要按钮的情况下,可以返回空html

谢谢@Star,但我需要一种全局性的方法,就像在Widget文件中一样,因为我有500多个模块。谢谢@Star,我找到了它,并在SugarWidget文件中实现了。