选择相关字段时填充字段 _ suite crm

Populating a field when choosing a relate field _ suite crm

我正在使用 crm 7.7.5 套件

当我创建商机并从相关字段中选择一个帐户时,我希望一个字段(国家/地区)自动填充所选帐户所在国家/地区的值。

为此,我尝试添加代码

    $dictionary['Opportunity']['fields']['country_c']['populate_list']= array('id','name','country_c');
$dictionary['Opportunity']['fields']['country_c']['field_list'] = array('account_id_c','account_name','country_c');

在文件 \custom\Extension\modules\Opportunities\Ext\Vardefs\sugarfield_country_c.php

知道country_c是tableaccounts中的column country的名称,第二个country_c是layout opportunity中字段country的id

但是这不起作用,谁能帮我找出原因?

PS : 我尝试按照本教程进行操作 https://developer.sugarcrm.com/2011/08/31/howto-using-a-relate-field-to-populate-a-custom-field/

您应该转到 custom/modules/{您的模块}/metadata/editviewdefs.php 并编辑 editviewdefs.php 文件。
首先您需要找到数组其中定义了相关字段(account_name)。它看起来与此类似,可能还有更多参数。

array (
    'name' => 'account_name',
),

现在您需要将数据从相关字段 (country_c) 映射到新字段(假设 populated_country_c)。编辑后你的数组看起来像这样。

array (
    'name' => 'account_name',
    'displayParams' => array (
        'field_to_name_array' => array(
            'id'=>'account_id_c',
            'name'=>'account_name',
            'country_c' => 'populated_country_c',
            ),
        ),
    ),

现在 populated_country_c 是新字段,当您在相关字段中选择帐户时,将在其中填充有关国家/地区的数据。所以我们还需要创建那个新字段。您可以通过工作室或仅通过添加新阵列手动完成。最后,您的文件将如下所示

array (
        'name' => 'account_name',
        'displayParams' => array (
            'field_to_name_array' => array(
                'id'=>'account_id_c',
                'name'=>'account_name',
                'country_c' => 'populated_country_c',
                ),
            ),
        ),
array (
        'name' => 'populated_country_c',
        'label'=> 'LBL_POPULATED_COUNTRY'
        ),

现在,当从相关字段中选择新帐户时,populated_country_c 将填充所选帐户中的 country_c 字段。

使用字段billing_account_country而不是country_c,同时使用account_idaccount_name。我相信名称和 ID 必须一致 table。

这是@Bozic 解决方案的扩展。

如果有人试图根据选择自动填充相关字段,那么这里是解决方案。 (面对的人"No match for field: Account Name")

场景:我在帐户模块中有帐户所有者(与用户模块相关)字段。在案例模块中,我正在根据帐户选择获取帐户所有者字段。

在/custom/modules/Cases/metadata/editviewdefs.php

 0 => array(
             'name'=>'account_name',
             'displayParams' => array (
             'field_to_name_array' => array(
             'id'=>'account_name',
             'assigned_user_name' => 'account_owner_case_c', 
             'assigned_user_id' => 'user_id2_c',
         ),
     ),
  ),

注:

  • assigned_user_name 是帐户模块中帐户所有者的字段 ID
  • assigned_user_id 是帐户所有者的 id 字段
  • account_owner_case_cis 个案模块中个案客户所有者的字段
  • account_name 是案例模块中的选择字段(选择此字段时,帐户所有者将被填充)