Рабочее время

Дата/Время

Проверяет дату по рабочему графику и часовому поясу. Если время нерабочее, возвращает начало ближайшего рабочего интервала.

Что делает

Функция проверяет дату и время по заданному рабочему графику. Сначала она переводит дату в выбранный часовой пояс. Если дата уже попадает в рабочий интервал, функция возвращает её без переноса. Если время нерабочее, функция возвращает начало ближайшего следующего интервала.

Внутри используются Python zoneinfo.ZoneInfo для часовых поясов и сравнение с заданными интервалами. Результат имеет тип дата/время (datetime).

Пример использования

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

При графике пн-пт с 09:00 до 18:00:

  • понедельник, 14:30 → понедельник, 14:30;
  • понедельник, 20:00 → вторник, 09:00;
  • пятница, 20:00 → понедельник, 09:00.

Поля настройки

«Дата/время»

Укажите дату, которую нужно проверить по графику.

Варианты заполнения:

  • подставьте переменную типа дата/время из источника или предыдущего шага;
  • задайте фиксированную дату и время;
  • используйте результат другой функции, например смещение даты.

Если значение содержит часовой пояс, функция переводит его в пояс из поля «Часовой пояс». Если пояс не указан в самом значении, дата считается заданной в выбранном часовом поясе.

«Часовой пояс»

Выберите город или UTC из списка. Например:

  • «Москва (GMT+3)» - Europe/Moscow;
  • «Калининград (GMT+2)» - Europe/Kaliningrad;
  • «UTC» - UTC;
  • «Нью-Йорк» - America/New_York.

Можно ввести смещение GMT вручную: +3, -4, GMT+3, UTC-4 или +5:30. Допустимы смещения до 14 часов.

Именованные зоны учитывают сезонный переход времени, если он действует в регионе. Фиксированное смещение, например +3, сезонные изменения не учитывает.

«Рабочие интервалы»

Добавьте хотя бы один интервал. Для каждого интервала заполните:

  • «Дни» - один или несколько дней недели;
  • «С» - начало рабочего времени;
  • «До» - конец рабочего времени.

По умолчанию используется график пн-пт с 09:00 до 18:00.

Чтобы задать разный график, добавьте несколько интервалов. Например:

  1. Пн-пт, с 09:00 до 18:00.
  2. Сб, с 10:00 до 15:00.

Если «До» раньше или равно «С», интервал считается ночным и заканчивается на следующий день. Например, интервал пн с 22:00 до 06:00 включает вторник, 02:00.

Начало интервала включается, конец - нет: для графика 09:00-18:00 значение 18:00 переносится на следующий рабочий интервал.

Возможные ошибки

  • «Не указан часовой пояс» - заполните «Часовой пояс».
  • «Неизвестный часовой пояс» - выберите значение из списка или проверьте формат смещения GMT.
  • «Не задан график работы» - добавьте рабочий интервал.
  • «Некорректный график работы» - проверьте дни и время начала и окончания.
  • «Не найден ближайший рабочий интервал» - в ближайшие 14 дней нет подходящего интервала.

Похожие функции

Все функции
В
Число

Выбор значения по условию

Возвращает одно из двух значений нужного типа в зависимости от логического условия. Результат: число. Подходит для настройки сценариев. Типы: Число, Строка, Дата/Время, Список строк, Двоичные данные.

В
Булево

Выбор по нескольким условиям

Проверяет условия по порядку и возвращает значение для первого истинного условия. Результат: логическое значение. Подходит для настройки… Типы: Булево, Число, Строка, Дата/Время, Список строк, Двоичные данные.

П
Булево

Подстановка вместо пустого значения

Возвращает исходное значение, а при значении null подставляет заданное значение нужного типа. Результат: логическое значение. Типы: Булево, Число, Строка, Дата/Время, Список строк, Двоичные данные.

Р
Дата/Время

Разбор строки в значение

Преобразует строку или список строк в числа либо даты по выбранному формату. Результат: дата и время. Подходит для настройки сценариев.

С
Дата/Время

Смещение даты и времени

Прибавляет к дате или вычитает из нее дни, часы, минуты, секунды и доли секунды. Результат: дата и время. Подходит для настройки сценариев.

У
Дата/Время

Установка часового пояса

Устанавливает смещение UTC для даты и времени или переводит уже заданное время в новый пояс. Результат: дата и время. Подходит для настро…