Элементы смарт-процессов
Scope: crm Права на выполнение: для всех
Описание
Так как элементы каждого смарт-процесса хранятся в отдельной таблице, то идентификаторы элементов разных смарт-процессов могут совпадать.
Поэтому во все методы необходимо передавать внешний идентификатор смарт-процесса entityTypeId
.
Права доступа
При обращении к методам REST учитываются права доступа пользователя, от которого осуществляется вызов методов.
Булевы значения
Значения некоторых полей имеют булевый тип (например, поле opened
- "Доступно для всех").
В этом случае для изменения значения надо передавать "Y" или "N". В ответах на запросы они будут отображаться аналогично.
Привязка к реквизитам
Для управления привязкой реквизитов можно воспользоваться методами crm.requisite.link.*.
Особенности работы с названиями полей
В базе данных имена полей элементов хранятся в UPPER_CASE
формате. Но при работе через REST мы преобразуем их в camelCase
. Например, поле ASSIGNED_BY_ID
преобразуется в assignedById
.
Имена пользовательских полей, помимо символа _
и букв, могут содержать цифры. Обычно они идут раздельно, например, поле UF_CRM_10_5186744711
преобразуется в ufCrm10_5186744711
.
Чтобы код выглядел более читаемым, подчеркивания между цифрами остаются, а остальные - убираются.
Проблемы начинаются, когда буквы и цифры в поле идут вперемешку. Например, UF_CRM_10_DIGIT10
преобразуется в ufCrm10Digit10
. При обратном преобразовании нет никакой возможности определить, исходное поле называлось UF_CRM_10_DIGIT10
или UF_CRM_10_DIGIT_10
.
Чтобы разрешить подобные конфликты, с версии CRM 21.1800.0 был внедрен механизм предварительного анализа названий полей, и если в них обнаружены конфликты, то название поля не преобразуется в camelCase
, а остается как есть.
Кроме того, любые названия полей во всех методах можно передавать как в UPPER_CASE
, так и в camelCase
.
Например, у элемента есть два поля - UF_CRM_10_DIGIT_10
и UF_CRM_10_DIGIT10
.
При вызове метода crm.item.fields
название первого поля будет преобразовано в ufCrm10Digit10
, а второе останется UF_CRM_10_DIGIT10
. При этом по ключу upperName
можно прочитать название поля в UPPER_CASE
и во всех методах использовать его.
Методы
Методы | Описание |
---|---|
crm.item.fields | Отдает информацию о полях смарт-процесса. |
crm.item.get | Отдает информацию об элементе смарт-процесса. |
crm.item.list | Возвращает массив элементов смарт-процесса. |
crm.item.add | Создаёт создает новый элемент смарт-процесса. |
crm.item.update | Обновляет элемент смарт-процесса. |
crm.item.delete | Удаляет элемент смарт-процесса. |
С версии crm 21.800.0
Появляется поддержка полей-родителей при чтении и изменении элементов смарт-процессов.
Каждое поле имеет код parentId + {parentEntityTypeId}
.
- Метод
fields
в списке полей будет отдавать информацию о полях с родителями. - Методы
get
иlist
будут отдавать значения полей родителей. - Методы
add
иupdate
будут поддерживать изменения значений этих полей.
Дополнительно
Сообщение не промодерировано, возможны ошибки и неточности.
|
||
parentId2 - привязка к сделке parentId3 - привязка к контакту | ||
Сообщение не промодерировано, возможны ошибки и неточности.
|
||
Почему именно родитель 2? Да хер знает, битриксу главное быстрее говнокод написать | ||
Сообщение не промодерировано, возможны ошибки и неточности.
|
Поля с типом Да/Нет возвращают 0 и 1, однако на вход они принимают Y и N
|
Сообщение не промодерировано, возможны ошибки и неточности.
|
Уважаемые разработчики. Замечательный функционал. Очень не хватает связи с сущностью сделки на пример. Причем в самом смарт процессе она есть. Но дотянуться до неё REST API никак.
|
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.