Документация для разработчиков
Темная тема

main.user.selector

Описание

Компонент main.user.selector представляет собой готовый к встраиванию в форму контрол для выбора сущностей различных типов.

В физической структуре его можно найти в папке /bitrix/components/bitrix/main.user.selector.

Параметры

ПараметрОписание
IDУникальный ID селектора (тип значения - строка).
API_VERSIONВерсия API селектора (тип значения - число: по умолчанию - 2, поддерживается также 3 - с сохранением выбранной сущности в "Последних" сразу после ее выбора).
LISTМассив кодов сущностей, подставляемых в качестве уже выбранных. Например: [ 'U1', 'SG2', 'DR3' ].
INPUT_NAMEИмя поля формы, в котором будет передано выбранное значение (значения). Для того, чтобы использовать множественный выбор, применяйте значение вида FIELD[ ].
USE_SYMBOLIC_IDПринимает значение true или false. Использовать символьный код сущности вместо числового. По умолчанию - false, но если вы планируете выбирать сущности разных типов - используйте true.
BUTTON_SELECT_CAPTIONЯзыковое сообщение для элемента управления, открывающего селектор, если не выбран ни один элемент (по умолчанию - "выбрать").
BUTTON_SELECT_CAPTION_MOREЯзыковое сообщение для элемента управления, открывающего селектор, если выбран хотя бы один элемент (по умолчанию - "выбрать").
OPEN_DIALOG_WHEN_INITОткрывать ли попап селектора сразу после инициализации контрола (а не по клику на него). Принимает значение true или false. По умолчанию false.
UNDELETABLEМассив кодов сущностей, которые должны отображаться в селекторе без возможности удаления.
LAZYLOADОткладывать ли загрузку данных в селектор (при пустом значении параметра LIST) до открытия селектора. Принимает значения Y/N. По умолчанию - N, т.е. загружать данные сразу.
SELECTOR_OPTIONSНабор опций для передачи в контрол-попап выбора.

Пример вызова

// давать ли возможность выбора сущности "Всем сотрудникам" (с кодом UA)
<?
$APPLICATION->IncludeComponent(
'bitrix:main.user.selector',
' ',
[
	"ID" => "mail_client_config_queue",
	"API_VERSION" => 3,
	"LIST" => array_keys($crmQueueSelected),
	"INPUT_NAME" => "fields[crm_queue][]",
	"USE_SYMBOLIC_ID" => true,
	"BUTTON_SELECT_CAPTION" => Loc::getMessage("MAIL_CLIENT_CONFIG_CRM_QUEUE_ADD"),
	"SELECTOR_OPTIONS" => 
	[
		"departmentSelectDisable" => "Y",
		'context' => 'MAIL_CLIENT_CONFIG_QUEUE',
		'contextCode' => 'U',
		'enableAll' => 'N',
		'userSearchArea' => 'I'
	]
]
);
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Сергей Абакаев
Сообщение не промодерировано, возможны ошибки и неточности.
Цитата
пишет:
CRM сущности в LIST передаются в таком виде: [CODE]   'LIST'  => [ 'CRMCOMPANY1'  =>  'companies' ,  'CRMCONTACT1'  =>  'contacts' ],
'CONVERT_TO_SYMBOLIC_ID'  =>  'N' ,
 Копировать  [/CODE] либо в таком: [CODE]   'LIST'  => [ 'CO_1'  =>  'companies' ,  'C_1'   =>  'contacts' ],
'CONVERT_TO_SYMBOLIC_ID'  =>  'N' ,
//с указанием в SELECTOR_OPTIONS
'crmPrefixType'  =>  'SHORT'
 Копировать  [/CODE] UNDELETABLE: [CODE]   'UNDELETABLE'  => [ 'CRMCOMPANY1' ,  'CRMCONTACT1' ],
//или
'UNDELETABLE'  => [ 'CO_1' ,  'C_1' ],  Копировать  [/CODE] из js выбранные элементы можно узнать через: [CODE]  BX .UI  .SelectorManager  .instances  [selectorId]  .itemsSelected
 Копировать  [/CODE]
код  BX.UI.SelectorManager.instances уже не работает на коробке
3
ononoki
Сообщение не промодерировано, возможны ошибки и неточности.
CRM сущности в LIST передаются в таком виде:
Код
'LIST' => ['CRMCOMPANY1' => 'companies', 'CRMCONTACT1' => 'contacts'],
'CONVERT_TO_SYMBOLIC_ID' => 'N',
либо в таком:
Код
'LIST' => ['CO_1' => 'companies', 'C_1'  => 'contacts'],
'CONVERT_TO_SYMBOLIC_ID' => 'N',


//с указанием в SELECTOR_OPTIONS
'crmPrefixType' => 'SHORT'

UNDELETABLE:
Код
'UNDELETABLE' => ['CRMCOMPANY1', 'CRMCONTACT1'],

//или
'UNDELETABLE' => ['CO_1', 'C_1'],
из js выбранные элементы можно узнать через:
Код
BX.UI.SelectorManager.instances[selectorId].itemsSelected
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх