Рабочее время
Дата/Время
Проверяет дату по рабочему графику и часовому поясу. Если время нерабочее, возвращает начало ближайшего рабочего интервала.
Что делает
Функция проверяет дату и время по заданному рабочему графику. Сначала она переводит дату в выбранный часовой пояс. Если дата уже попадает в рабочий интервал, функция возвращает её без переноса. Если время нерабочее, функция возвращает начало ближайшего следующего интервала.
Внутри используются 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.
Чтобы задать разный график, добавьте несколько интервалов. Например:
- Пн-пт, с 09:00 до 18:00.
- Сб, с 10:00 до 15:00.
Если «До» раньше или равно «С», интервал считается ночным и заканчивается на следующий день. Например, интервал пн с 22:00 до 06:00 включает вторник, 02:00.
Начало интервала включается, конец - нет: для графика 09:00-18:00 значение 18:00 переносится на следующий рабочий интервал.
Возможные ошибки
- «Не указан часовой пояс» - заполните «Часовой пояс».
- «Неизвестный часовой пояс» - выберите значение из списка или проверьте формат смещения GMT.
- «Не задан график работы» - добавьте рабочий интервал.
- «Некорректный график работы» - проверьте дни и время начала и окончания.
- «Не найден ближайший рабочий интервал» - в ближайшие 14 дней нет подходящего интервала.
Похожие функции
Все функцииВыбор значения по условию
Возвращает одно из двух значений нужного типа в зависимости от логического условия. Результат: число. Подходит для настройки сценариев. Типы: Число, Строка, Дата/Время, Список строк, Двоичные данные.
Выбор по нескольким условиям
Проверяет условия по порядку и возвращает значение для первого истинного условия. Результат: логическое значение. Подходит для настройки… Типы: Булево, Число, Строка, Дата/Время, Список строк, Двоичные данные.
Подстановка вместо пустого значения
Возвращает исходное значение, а при значении null подставляет заданное значение нужного типа. Результат: логическое значение. Типы: Булево, Число, Строка, Дата/Время, Список строк, Двоичные данные.
Разбор строки в значение
Преобразует строку или список строк в числа либо даты по выбранному формату. Результат: дата и время. Подходит для настройки сценариев.
Смещение даты и времени
Прибавляет к дате или вычитает из нее дни, часы, минуты, секунды и доли секунды. Результат: дата и время. Подходит для настройки сценариев.
Установка часового пояса
Устанавливает смещение UTC для даты и времени или переводит уже заданное время в новый пояс. Результат: дата и время. Подходит для настро…