Определить заместителя по переданному справочнику
Робот «Определить заместителя по переданному справочнику». Выбирает действующего на заданный момент заместителя и обнаруживает неоднозначности или циклы замещения.

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.
Для кого и какую проблему решает
Для администратора согласований, который использует собственный справочник замещений. Помогает выбрать заместителя на заданный момент и обнаружить пересечения или циклы, вместо случайного выбора сотрудника.
Что подготовить
Установите действие в каталоге приложения «CRM роботы 2.0 + AI», затем добавьте его в нужную точку автоматизации. Для чтения или изменения объектов нужен соответствующий доступ пользователя подключения. Идентификаторы берите из полей карточки или результатов предыдущих шагов: название объекта не заменяет его числовой ID.
Параметры и значения
| Поле в настройке | Тип | Обязательность и исходное значение |
|---|---|---|
| Исходный сотрудник | Целое число | Обязательное; значение по умолчанию не задано |
| Момент проверки ISO с часовым поясом | Строка | Обязательное; значение по умолчанию не задано |
| Справочник замещений JSON | Текст | Обязательное; значение по умолчанию не задано |
| Обход цепочки | Выбор из списка | Обязательное; значение по умолчанию не задано |
| Варианты поля «Обход цепочки» | single: Один переход; follow: До последнего заместителя |
Поля, обозначенные JSON, заполняйте корректными массивами или объектами с двойными кавычками в строках. Подставляйте одно значение через штатный выбор данных редактора; не копируйте служебный идентификатор шага из другого шаблона.
Как использовать пошагово
- Передайте исходного сотрудника и момент проверки с часовым поясом.
- Заполните правила, например
[{"id":"r1","employeeId":21,"substituteId":22,"start":"2026-10-01T00:00Z","end":"2026-11-01T00:00Z"}]. - Выберите один переход либо обход до последнего заместителя.
- Проверьте признак определения и причину:
resolved,none,ambiguousилиcycle. - Только определённого заместителя передавайте в отдельное назначение. Неоднозначность отправляйте на исправление справочника.
Учебный пример и ожидаемый результат
Сотрудника 21 в октябре замещает 22 по правилу выше. Для момента 2026-10-15T10:00:00+03:00 и одного перехода ожидается ID 22. На точной конечной границе 1 ноября это правило уже не действует. Все номера объектов в примере условные; замените их данными своего портала. Пример объясняет настройку, а не подтверждает выполненный запуск.
Какие результаты передать дальше
- Заместитель определен: да/нет (Y/N).
- ID заместителя: целое число.
- resolved/none/ambiguous/cycle: строка.
- Путь сотрудников JSON: текст.
- Использованные правила JSON: текст.
В следующем действии откройте выбор данных и выберите результат этого робота по названию. Сначала проверьте статус выполнения; при ошибке передайте её пояснение на разбор и не используйте пустые значения как подтверждённый результат. Успех шага и положительный ответ на бизнес-проверку: разные условия.
Ограничения и исправление ошибок
До 1000 правил и 1 МБ JSON. Начало включено, конец не включён. Несколько действующих правил дают неоднозначность, цикл: отдельную причину. Проверяется только переданный справочник: активность, права и занятость сотрудников не загружаются.
Если доступ изменился, сначала проверьте объект под пользователем подключения и актуальность ID. Повторяйте действие после устранения причины. Для действий с записью предварительно сверяйте фактическое состояние: сообщение об ошибке само по себе не доказывает, что ни одна правка не сохранилась.
Как заполнять JSON-поля
Каждый блок ниже вставляется целиком в своё поле. Не добавляйте внешние кавычки вокруг всего массива или объекта. Учебные ID и названия замените фактическими данными.
Справочник замещений JSON
[
{
"id": "r1",
"employeeId": 21,
"substituteId": 22,
"start": "2026-10-01T00:00:00Z",
"end": "2026-11-01T00:00:00Z"
}
]
Массив до 1000 правил. В объекте обязательны строковый уникальный id, числовые положительные employeeId и substituteId, строковые start и end с Z либо числовым поясом. Источник: ваш утверждённый справочник. Начало включено, конец исключён. [] допустим как отсутствие замещений и даст причину none; {} вместо массива неверен. Пересечения и циклы не разрешаются произвольным выбором.