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

Настройки смарт-процессов

Начальные настройки

Scope: crm Права на выполнение: администратор

Настройки пользовательских полей

Невозможно представить рабочий смарт-процесс без собственного набора пользовательских полей.

Управление ими вынесено в отдельный scope userfieldconfig.


Права доступа

Методы доступны только тем приложениям/вебхукам, владельцы которых являются администраторами CRM.


Идентификаторы

При работе с этими методами в качестве идентификатора id необходимо передавать идентификатор настроек смарт-процесса (первичный ключ), а не идентификатор типа entityTypeId.

Связанные данные


Эти методы позволяют управлять не только полями самих настроек смарт-процессов, но и связанными данными - настройками связей, привязками к пользовательским полям, а также к настройкам показа смарт-процесса вне CRM.


Настройки связей

Настройки связей отдаются по ключу relations в следующем виде:

{
	"parent": [],
	"child": []
}
  • parent - настройки привязок к этому смарт-процессу;
  • child - настройки привязок этого смарт-процесса к другим разделам.

где каждый элемент массива имеет следующую структуру с описанием связи:

{
	"entityTypeId": number,
	"isChildrenListEnabled": boolean,
	"isPredefined": boolean
}
    Здесь
  • entityTypeId - идентификатор типа связанного раздела;
  • isChildrenListEnabled - включить отображение отдельного таба со списком связанных элементов в карточке родителя;
  • isPredefined - если здесь стоит true, то связь является "предустановленной". Настройки таких связей изменить нельзя!

При изменении настройки связей должны передаваться в таком же виде.


При изменении настроек связей смарт-процесса необходимо передавать набор настроек целиком, либо опустить ключ relations вообще. Настройки переписываются целиком.


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

Если поле isUseInUserfieldEnabled установлено в true, то можно передать по ключу linkedUserFields набор полей, в которых должен отображаться этот смарт-процесс.

  • 'CALENDAR_EVENT|UF_CRM_CAL_EVENT' - событие в календаре.
  • 'TASKS_TASK|UF_CRM_TASK' - задачи.
  • 'TASKS_TASK_TEMPLATE|UF_CRM_TASK' - шаблон задачи.

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


При изменении привязки к пользовательским полям передавать набор настроек целиком, либо опустить ключ linkedUserFields вообще. Настройки переписываются.


Показ вне CRM

По ключу customSections можно передать массив с описанием дополнительных разделов. Каждый элемент массива имеет следующую структуру:

{
	"id": number,
	"title": string,
	"isSelected": boolean
}

Ключ isSelected можно игнорировать, он используется для отображения диалога в настройках. За фактическую привязку смарт-процесса к разделу отвечает параметр customSectionId.

Примеры запросов есть в описании метода crm.type.update.


При изменении списка дополнительных разделов необходимо передавать его целиком, либо опустить ключ customSections вообще. Настройки переписываются.

© «Битрикс», 2001-2024, «1С-Битрикс», 2024