Я создаю пользовательский модуль с именем «Агенты», используя ModuleBuilder в SugarCE 6.0.0 .
Модуль основан на Аккаунтах. В Studio, когда я нажимаю assign_user_name в разделе Assignable и сохраняю его, он генерирует два поля, а именно:
Когда я развернул пакет и попытался выбрать имя пользователя из назначенного поля, сначала он вообще не получал никаких результатов (ни через автозаполнение, ни через всплывающее окно).
Я проверил custom / modulebuilder / packages / MyPackage / modules / Agents / vardefs.php , вот что я нашел:
'_id_c' =>
array (
'required' => false,
'name' => '_id_c',
'vname' => '',
'type' => 'id',
'massupdate' => 0,
'comments' => '',
'help' => '',
'importable' => 'true',
'duplicate_merge' => 'disabled',
'duplicate_merge_dom_value' => 0,
'audited' => false,
'reportable' => true,
'len' => 36,
'size' => '20',
),
'assigned_user_name' =>
array (
'required' => true,
'name' => 'assigned_user_name',
'link' => 'assigned_user_link',
'vname' => 'LBL_ASSIGNED_TO_NAME',
'rname' => 'name',
'type' => 'relate',
'reportable' => true,
'source' => 'non-db',
'table' => 'users',
'id_name' => '_id_c',
'module' => '',
'duplicate_merge' => 'disabled',
'massupdate' => 0,
'comments' => '',
'help' => '',
'importable' => 'true',
'duplicate_merge_dom_value' => '0',
'audited' => true,
'len' => '255',
'size' => '20',
'ext2' => '',
'quicksearch' => 'enabled',
'studio' => 'visible',
),
Обратите внимание, что для параметра module в assign_user_name не задано правильное значение.
Первый вопрос: это ошибка в студии?
Мое быстрое решение было установить module => 'Users'
, и это сработало. Теперь я могу выбрать имя пользователя из выпадающего списка (автозаполнение).
Однако при выборе имени пользователя скрытое поле _id_c пользователя не заполняется UUID пользователя с 36 символами и, следовательно, когда я сохраняю запись и перезагружаю ее, поле assign_user_name остается пустым. 1040 *
Кто-нибудь имеет представление о том, почему это происходит? И какие средства для этого?
Спасибо
м ^ е