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

crm.type.update

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

Описание и параметры

crm.type.update({id: number, fields: {}})

Метод обновит существующие настройки смарт-процесса с идентификатором id.

Параметры

Параметр Описание
idИдентификатор смарт-процесса.
fieldsСостоит из полей настроек смарт-процесса, а также настроек связей, привязок к пользовательскому полю и настройки показа вне CRM.

Изменить только собственные поля настроек смарт-процесса

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

{
	"id": 128,
	"fields": {
		"isDocumentsEnabled": "N"
	}
}

Изменить настройки связей

Подробнее о связях можно прочитать тут.

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

  • Настройки необходимо передавать целиком, они полностью перезаписываются.
  • Нельзя изменить настройки предустановленных связей (iPredefined: true). Эти настройки можно не передавать в запросе.

Включение комплексного поля "Клиент" создает предустановленные привязки к Компании и Контактам.

{
	"id": 128,
	"fields": {
		"relations": {
			"parent": [
				{
					"entityTypeId": 130
				}
			],
			"child": [
				{
					"entityTypeId": 130,
					"isChildrenListEnabled": "N"
				}
			]
		}
	}
}

Если не передать настройку isChildrenListEnabled, то по умолчанию туда запишется false. Ключ iPredefined можно не передавать.

Если при попытке сохранить переданные настройки связей возникнет ошибка, она не будет выведена. Настройки просто не сохранятся.

Изменить настройки показа вне CRM


Внимание! Управлять показом вне CRM через методы crm.type.* не рекомендуется. Это устаревший функционал. Рекомендуется использовать методы crm.automatedsolution.*


Набор дополнительных разделов необходимо передавать целиком.

Допустим, на текущий момент набор разделов выглядит следующим образом (в ответ на crm.type.get):

{
	"type": {
		"customSections": [
			{
				"id": 18,
				"title": "Manufacturing",
				"iSelected": "N"
			},
			{
				"id": 20,
				"title": "HR",
				"iSelected": "N"
			}
		]
	}
}

Необходимо раздел "HR" поставить на первое место, раздел "Manufacturing" удалить, а вместо него создать новый "Consuming", к которому сразу привязать смарт-процесс.

В этом случае запрос будет выглядеть следующим образом:

{
	"id": 128,
	"fields": {
		"customSections": [
			{
				"id": 20,
				"title": "HR"
			},
			{
				"id": "new_1",
				"title": "Consuming"
			}
		],
		"customSectionId": "new_1"
	}
}

Про показ вне CRM дополнительно можно прочитать в документации API D7.



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

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

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

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

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Даниил Казанцев
Сообщение не промодерировано, возможны ошибки и неточности.
Цитата
пишет:
В   relations     параметр   isChildrenListEnabled   нужно передавать как   "true"   или   "false"  .   "Y"   и   "N"   в данном случае не работают  
Тоже самое касается параметра linkedUserFields, как указано в документации, нужно передавать весь блок целиком, и элементы этого блока должны иметь значения "true" или "false", вместо "Y" и "N"
0
Даниил Казанцев
Сообщение не промодерировано, возможны ошибки и неточности.
В relations параметр isChildrenListEnabled нужно передавать как "true" или "false". "Y" и "N" в данном случае не работают
© «Битрикс», 2001-2024, «1С-Битрикс», 2024