Можно сделать следующее:
- Создать 2 файла
editviewdefs.php
иeditNOEDITviewdefs.php
, потом выбирать один из них в зависимости от роли пользователя. Пример можно посмотреть здесь:
Custom View depending field value
Custom View depending field value - В файл
editNOEDITviewdefs.php
добавить вручную полное описание коллекции. Вот пример:
'lbl_panel_connects' => array (
0 => array (
0 => array (
'name' => 'bf_connects', // имя поля коллекции
'type' => 'collection',
'displayParams' => array (
'collection_field_list' => array ( // список полей связанного модуля
0 => array (
'name' => 'title',
'displayParams' => array (
'size' => '15%',
'sort'=>true,
),
// сделать поле readonly, обратные слеши обязательны
'customCode' => '<input type=\"text\" size=\"10px\" class=\"sugar_field\" name=\"title\" id=\"title\" readonly=\"readonly\">',
),
1 => array (
'name' => 'address_link',
'displayParams' => array (
'size' => '20%',
),
),
2 => array (
'name' => 'attribute',
'displayParams' => array (
'size' => '5%',
),
),
3 => array (
'name' => 'date_start',
'displayParams' => array (
'size' => '15%',
),
),
4 => array (
'name' => 'description',
'displayParams' => array (
'size' => '30%',
),
),
),
),
),
),
),
Не забудьте использовать последнюю версию: