Добавить значение в множественное поле без дубля
Дополняет существующий список в карточке CRM одним значением, сохраняя остальные.

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.
Для кого и какую проблему решает
Робот полезен для администратора CRM, дополняющего множественные пользовательские поля. При каждом событии в списке интересов клиента появляется ещё одна одинаковая запись. Робот добавляет значение только при его отсутствии и сохраняет остальные элементы списка.
Что делает и когда применять
Дополняет существующий список в карточке CRM одним значением, сохраняя остальные.
Повторный запуск с тем же значением ничего не добавляет. Сравнение учитывает тип поля. Поддерживаются строки, текст, ссылки, числа, Да/Нет, даты ISO, списки и простые привязки. Файлы и составные поля (включая телефоны и e-mail CRM) не изменяются. Код пользовательского поля указывайте в исходном виде UF_CRM_…. Не запускайте параллельно несколько изменений одного поля: между чтением и записью другой процесс может изменить его.
Что подготовить
Нужен установленный робот из приложения «CRM роботы 2.0 + AI» и право на настройку автоматизации нужной CRM-воронки или шаблона бизнес-процесса. Пользователю, от имени которого работает приложение, должны быть доступны выбранные CRM-элементы и нужное действие с ними.
Выберите множественное простое поле и проверьте его тип. Значение задайте корректным JSON: строку заключите в двойные кавычки. Телефоны и e-mail CRM этим действием не изменяются.
Как настроить и использовать
- Откройте автоматизацию нужной сущности и выберите стадию, на которой нужен робот «Добавить значение в множественное поле без дубля». В шаблоне бизнес-процесса добавьте одноимённое действие.
- Выберите множественное простое поле и проверьте его тип. Значение задайте корректным JSON: строку заключите в двойные кавычки. Телефоны и e-mail CRM этим действием не изменяются.
- Заполните Тип CRM: 1 — лид, 2 — сделка, 3 — контакт, 4 — компания, 31 — счёт, ID смарт-процесса, Код поля: title, TITLE или UF_CRM_…, ID элемента CRM, Значение в JSON: "текст", 12, false или массив. Для рабочего сценария подставьте значения полей документа или результаты предыдущих действий вместо учебных данных ниже.
- Проверьте обязательные поля и варианты выбора в таблице настроек. Сохраните действие и свяжите его результаты с дальнейшими условиями процесса.
- Выполните пробный запуск на отдельном учебном элементе. Сначала проверьте статус и пояснение ошибки, затем содержательный результат и ветку, выбранную следующим действием.
Параметры робота
Имена полей ниже совпадают с настройками действия. Значения из таблицы относятся к самому роботу; результаты предыдущих шагов выбирайте через подстановку значения в редакторе.
| Поле в настройках | Что передать | Обязательность и исходное значение |
|---|---|---|
Тип CRM: 1 — лид, 2 — сделка, 3 — контакт, 4 — компания, 31 — счёт, ID смарт-процесса (ENTITY_TYPE_ID) |
Формат: целое число. | Обязательно. Значение по умолчанию в настройках не задано |
Код поля: title, TITLE или UF_CRM_… (FIELD) |
Формат: строка. | Обязательно. Значение по умолчанию в настройках не задано |
ID элемента CRM (ITEM_ID) |
Формат: целое число. | Обязательно. Значение по умолчанию в настройках не задано |
Значение в JSON: "текст", 12, false или массив (VALUE) |
Формат: текст. | Обязательно. Значение по умолчанию в настройках не задано |
Учебный пример
Пример показывает способ настройки на вымышленных данных и ожидаемый смысл результата; это не отчёт о запуске на вашем портале.
- Тип CRM: 1 — лид, 2 — сделка, 3 — контакт, 4 — компания, 31 — счёт, ID смарт-процесса (
ENTITY_TYPE_ID):2. - Код поля: title, TITLE или UF_CRM_… (
FIELD):UF_CRM_INTERESTS. - ID элемента CRM (
ITEM_ID):501. - Значение в JSON: "текст", 12, false или массив (
VALUE):"Доставка".
Значение в JSON: "текст", 12, false или массив (VALUE)
Копируйте в это поле только содержимое блока, без названия поля и внешней обёртки со всеми настройками. Строковое JSON-значение пишется в двойных кавычках; число и true/false пишутся без кавычек. Выбирайте тип, совместимый с полем CRM. Это само новое или проверяемое значение, без объекта вида {"VALUE":...}. Для строкового поля нужен JSON-текст в кавычках, для числового число, для логического true/false, для множественного совместимый массив. Для поля-списка используйте ID существующего варианта, а не его подпись; ID можно получить отдельным поиском варианта.
"Доставка"
Если в поле уже есть «Монтаж», добавление «Доставка» сохранит оба значения. При повторе «Доставка» второй раз не появится, а признак изменения покажет отсутствие новой записи.
Какие данные возвращает и что делать дальше
| Результат | Какое значение получает следующий шаг |
|---|---|
Итоговое значение в JSON (result) |
текст |
Поле изменено (changed) |
да/нет |
Статус выполнения (status) |
да/нет |
Пояснение ошибки (error) |
строка |
Используйте «Поле изменено», чтобы отправлять уведомление только о реальном дополнении. Сохранённое итоговое значение можно передать в следующий шаг без повторного добавления. Не изменяйте то же поле параллельными действиями.
Ошибки и ограничения
Проверяйте результат действия до следующего изменения карточки. Ошибка доступа, неверный идентификатор и отсутствие найденного элемента требуют разных веток процесса. Не подставляйте нулевой или пустой результат как идентификатор существующего документа.