在suiteCRM中,如何将地址字段国家/地区和州文本字段更改为下拉列表?

时间:2016-11-03 21:58:19

标签: sugarcrm suitecrm

我正在开发一个自定义套件CRM模块,但我发现地址字段限制,因为它使用国家和州字段的文本字段。

我已尝试按照本网站上的说明进行研究:

https://johndopenotes.wordpress.com/2013/01/08/sugarcrm-change-address-state-and-country-to-dropdown-menu/

但由于我的自定义模块没有元数据目录???

,因此我陷入了第5步
  1. 转到/ custom / modules / Leads / metadata并更新editviewdefs.php。寻找这段代码:

    阵列(             'name'=> 'primary_address_street',             'hideLabel'=>真正,             'type'=> '地址',             'displayParams'=>             阵列(               'key'=> '主',               'rows'=> 2,               'cols'=> 30,               'maxlength'=> 150,             )           )           1 =>           阵列(             'name'=> 'alt_address_street',             'hideLabel'=>真正,             'type'=> '地址',             'displayParams'=>             阵列(               'key'=> 'ALT',               'copy'=> '主',               'rows'=> 2,               'cols'=> 30,               'maxlength'=> 150,             )           ),

  2. 并将类型从Address更新为CustomAddress

    array (
                'name' => 'primary_address_street',
                'hideLabel' => true,
                'type' => 'CustomAddress',
                'displayParams' => 
                array (
                  'key' => 'primary',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),
              1 => 
              array (
                'name' => 'alt_address_street',
                'hideLabel' => true,
                'type' => 'CustomAddress',
                'displayParams' => 
                array (
                  'key' => 'alt',
                  'copy' => 'primary',
                  'rows' => 2,
                  'cols' => 30,
                  'maxlength' => 150,
                ),
              ),
    

    有人可以给我一个指针,告诉我如何在我的自定义模块下拉列表而不是文本字段中创建地址字段吗?

2 个答案:

答案 0 :(得分:1)

这应该是更新字段的vardef的情况,因此类型设置为枚举,选项指向您的下拉列表。然后运行修复和重建。

您链接到的指南看起来像是在创建一个新的字段类型,我认为这样做太过分了。它也使用Sugar逻辑使2个列表依赖,但我不确定它是SuiteCRM中的一个功能。

答案 1 :(得分:1)

您可以使用多个文件组合,而不是选择地址类型字段。有关街道地址的示例,您可以使用(datatype:textField)

enter image description here

同样对于城市,您可以添加文本字段。现在,对于州和国家,您可以根据需要使用下拉列表并添加下拉列表

enter image description here

对于zipcode,您可以根据需要使用整数/文本字段。

现在要将州依赖于国家/地区,您可以按照以下方式使用自定义javascript / jquery

  1. 添加对您要添加的javascript文件的引用 结束自定义/ modules /<> / metadata / [edit | detail] viewdefs.php $ viewdefs ['机会'] [' EditView'] [' templateMeta'] ['包含'] =数组(数组(' ; file' =>' path / to / file / filename.js',),);
  2. 将要包含的javascript文件添加到您所在的位置 以上引用。
  3. 从管理部分快速修复,然后浏览器刷新