Рассчитать следующую ежегодную дату
Робот «Рассчитать следующую ежегодную дату». Находит следующее ежегодное наступление месяца и дня с явным правилом для 29 февраля.

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.
Для кого и какую проблему решает
Для администратора ежегодных напоминаний о продлении, годовщине или контрольной дате. Находит следующую дату по месяцу и дню и позволяет явно выбрать правило для 29 февраля.
Что подготовить
Установите действие в каталоге приложения «CRM роботы 2.0 + AI», затем добавьте его в нужную точку автоматизации. Для чтения или изменения объектов нужен соответствующий доступ пользователя подключения. Идентификаторы берите из полей карточки или результатов предыдущих шагов: название объекта не заменяет его числовой ID.
Параметры и значения
| Поле в настройке | Тип | Обязательность и исходное значение |
|---|---|---|
| Исходная дата YYYY-MM-DD | Строка | Обязательное; значение по умолчанию не задано |
| От какой даты искать YYYY-MM-DD | Строка | Обязательное; значение по умолчанию не задано |
| Включать исходный день поиска | Выбор из списка | Обязательное; значение по умолчанию не задано |
| Варианты поля «Включать исходный день поиска» | Y: Да; N: Нет |
|
| 29 февраля в невисокосный год | Выбор из списка | Обязательное; значение по умолчанию не задано |
| Варианты поля «29 февраля в невисокосный год» | feb28: 28 февраля; march1: 1 марта; skip: Пропускать год |
Поля, обозначенные JSON, заполняйте корректными массивами или объектами с двойными кавычками в строках. Подставляйте одно значение через штатный выбор данных редактора; не копируйте служебный идентификатор шага из другого шаблона.
Как использовать пошагово
- Передайте исходную календарную дату и дату начала поиска в формате
YYYY-MM-DD. - Укажите, включать ли исходный день поиска при совпадении месяца и дня.
- Выберите правило для 29 февраля: 28 февраля, 1 марта либо пропуск невисокосного года.
- Проверьте признак нахождения и используйте календарную дату или количество дней в следующем напоминании.
- Если нужно время отправки, задайте его отдельным шагом; календарная дата этого робота сама по себе не содержит времени.
Учебный пример и ожидаемый результат
Исходная дата 2020-02-29, поиск от 2026-01-01, включение дня Y, правило «28 февраля». Ожидаемая следующая дата: 2026-02-28. При правиле пропуска выбирается следующее 29 февраля високосного года. Все номера объектов в примере условные; замените их данными своего портала. Пример объясняет настройку, а не подтверждает выполненный запуск.
Какие результаты передать дальше
- Дата найдена: да/нет (Y/N).
- Следующая дата: дата.
- Календарных дней: целое число.
В следующем действии откройте выбор данных и выберите результат этого робота по названию. Сначала проверьте статус выполнения; при ошибке передайте её пояснение на разбор и не используйте пустые значения как подтверждённый результат. Успех шага и положительный ответ на бизнес-проверку: разные условия.
Ограничения и исправление ошибок
У исходной даты используются только месяц и день: её год не задаёт начало повторений. Другие даты правилом 29 февраля не сдвигаются. Если будущая дата выходит за 9999 год, нахождение отрицательное, дата пустая. Праздники и рабочий график не учитываются.
Если доступ изменился, сначала проверьте объект под пользователем подключения и актуальность ID. Повторяйте действие после устранения причины. Для действий с записью предварительно сверяйте фактическое состояние: сообщение об ошибке само по себе не доказывает, что ни одна правка не сохранилась.