Например, в Opportunities and Cases есть поля отношений, непосредственно указывающие на учетные записи. У меня есть настраиваемый модуль, который интегрируется в эти модули. Я мог бы добавить отдельное поле отношения для настраиваемого модуля, но то, что я хочу, является flexrelate, позволяющим использовать только учетные записи и настраиваемый модуль. Это отлично работает, установив специальный список опций в parent_name. но приводит к полю parent_type и parent_id в db.Как заменить поле построения в поле flexrelate
Как настроить flexrelate так, чтобы при выборе учетных записей как parent_type он сохранялся в account_id и при выборе настраиваемого модуля он сохранял его поле id?
Варианты для flexrelate:
$app_list_strings['parent_type_display_custom']['CustomMod'] = 'CustomMod';
$app_list_strings['parent_type_display_custom']['Accounts'] = 'Accounts';
$app_list_strings['record_type_display_custom']['CustomMod'] = 'CustomMod';
$app_list_strings['record_type_display_custom']['Accounts'] = 'Accounts';
Дополнительные vardefs для случаев:
$dictionary["Case"]["fields"]["parent_type"] = array (
'name' => 'parent_type',
'type' => 'link',
'vname' => 'LBL_PARENT_TYPE',
'type' => 'parent_type',
'dbType' => 'varchar',
'group' => 'parent_name',
'options' => 'parent_type_display_custom',
'len' => '255',
);
$dictionary["Case"]["fields"]['parent_name'] =
array(
'name' => 'parent_name',
'parent_type' => 'record_type_display',
'type_name' => 'parent_type',
'id_name' => 'parent_id',
'vname' => 'LBL_RELATED_TO',
'type' => 'parent(_custom)',
'source' => 'non-db',
'options' => 'record_type_display_custom',
);
$dictionary["Case"]["fields"]['parent_id'] =
array(
'name' => 'parent_id',
'vname' => 'LBL_PARENT_ID',
'type' => 'id',
'required' => false,
'reportable' => true,
'comment' => 'eighter the Id of an account or a custommodule'
);
Как теперь я вижу, что я должен написать специальный SugarField для этой цели. Трудно понять, как изменить EditView.tpl. Теперь я задаюсь вопросом, должен ли я просто написать js, который копирует идентификаторы в нужные поля. – pauel