Перейти к основному содержимому

Расписание

Стд::Расписания::Расписание Доступность: КлиентИСервер

Базовый тип расписаний запуска.

Сравнение структурное.

Иерархия типа

Базовые типы: Объект

Дочерние типы: ЕжедневноеРасписание, ЕжемесячноеРасписание, ЕженедельноеРасписание, ОднократноеРасписание, ПериодическоеРасписание


Свойства

ВремяКонца

Доступность: КлиентИСервер ТолькоЧтение

ВремяКонца: Момент|Время|?

Если задано значение типа Момент, то момент, после наступления которого задание прекратит запускаться. Если Неопределено, то запускать бесконечно.

Если задано значение типа Время, то время, после наступления которого задание прекратит запускаться. Для заданий с определенным временем запуска правило: если время запуска ([РасписаниеЕжедневногоЗапуска.ЗапуститьВ] типа [РасписаниеЕжедневногоЗапуска], [РасписаниеЕжемесячногоЗапуска.ЗапуститьВ] типа [РасписаниеЕжемесячногоЗапуска], [РасписаниеОднократногоЗапуска.ЗапуститьВ] типа [РасписаниеОднократногоЗапуска] или [РасписаниеЕженедельногоЗапуска.ЗапуститьВ] типа [РасписаниеЕженедельногоЗапуска]) меньше времени ВремяКонца, то прекращаются запуски после указанного времени ВремяКонца; иначе время ВремяКонца берется в следующие сутки. Пример:

  • ЗапуститьВ: 9:00, ВремяКонца: 12:00 - запускать с 9 до 12
  • ЗапуститьВ: 12:00, ВремяКонца: 9:00 - запускать с 12 до 9 следующего дня

ВремяНачала

Доступность: КлиентИСервер ТолькоЧтение

ВремяНачала: Момент?

Момент, после наступления которого задание начнет запускаться. Если Неопределено, то начинать запуск немедленно.


ИсполнятьПропущенное

Доступность: КлиентИСервер ТолькоЧтение

ИсполнятьПропущенное: Булево

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


Методы

Ежедневно

Доступность: КлиентИСервер Статический

Ежедневно(
ЗапуститьВ: Время,
ПериодПовтораДней: Число = 1,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ЕжедневноеРасписание

Возвращает расписание запусков с указанным периодом дней ПериодПовтораДней в указанное время ЗапуститьВ. Опционально задаются также значения свойств ИсполнятьПропущенное, ВремяНачала и ВремяКонца.

Примеры

Запуск задания через день в 8 утра.

знч ЧерезДень = Расписание.Ежедневно(
Время{8:00},
ПериодПовтораДней = 2)

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = ЧерезДень)
Задание.Запланировать()

Ежемесячно

Доступность: КлиентИСервер Статический

Ежемесячно(
ЗапуститьВ: Время,
Месяцы: Обходимое<Месяц>,
ДниВМесяце: Обходимое<Число>,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ЕжемесячноеРасписание
Перегрузка:
Ежемесячно(ЗапуститьВ: Время, Месяцы: Обходимое<Месяц>, НеделиМесяца: Обходимое<НеделяМесяца>, ДниНедели: Обходимое<ДеньНедели>, ИсполнятьПропущенное: Булево = Ложь, ВремяНачала: Момент? = Неопределено, ВремяКонца: Момент|Время|? = Неопределено): ЕжемесячноеРасписание

Возвращает расписание запусков в указанное время ЗапуститьВ указанных дней ДниВМесяце указанных месяцев Месяцы. ДниВМесяце - В какие дни месяца запускать задание. Числа в диапазоне -28..-1 и 1..31. Положительные числа - дни месяца (1 - первый день, 2 - второй день и т.д.). Отрицательные числа дни с конца предыдущего месяца (-1 - последний день предыдущего месяца, -2 предпоследний день и т.д.). Опционально задаются также значения свойств ИсполнятьПропущенное, ВремяНачала и ВремяКонца.

// Расписание запуска в 8 утра в первый и последний день каждого месяца.
знч ПервыйПоследний = Расписание.Ежемесячно(
Время{8:00},
Месяцы = новый Множество(Месяц.Элементы()),
ДниВМесяце = {-1, 1})

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = ПервыйПоследний)
Задание.Запланировать()

Ежемесячно

Доступность: КлиентИСервер Статический

Ежемесячно(
ЗапуститьВ: Время,
Месяцы: Обходимое<Месяц>,
НеделиМесяца: Обходимое<НеделяМесяца>,
ДниНедели: Обходимое<ДеньНедели>,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ЕжемесячноеРасписание
Перегрузка:
Ежемесячно(ЗапуститьВ: Время, Месяцы: Обходимое<Месяц>, ДниВМесяце: Обходимое<Число>, ИсполнятьПропущенное: Булево = Ложь, ВремяНачала: Момент? = Неопределено, ВремяКонца: Момент|Время|? = Неопределено): ЕжемесячноеРасписание

Возвращает расписание запусков в указанное время ЗапуститьВ указанных дней недели ДниНедели указанных недель НеделиМесяца указанных месяцев Месяцы. Опционально задаются также значения свойств ИсполнятьПропущенное, ВремяНачала и ВремяКонца.

Примеры

// Расписание запуска в 8 утра в первый и третий понедельник каждого месяца.
знч НечетныеПонедельники = Расписание.Ежемесячно(
Время{8:00},
Месяцы = новый Множество(Месяц.Элементы()),
НеделиМесяца = {НеделяМесяца.Первая, НеделяМесяца.Третья},
ДниНедели = {ДеньНедели.Понедельник})

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = НечетныеПонедельники)
Задание.Запланировать()

Еженедельно

Доступность: КлиентИСервер Статический

Еженедельно(
ЗапуститьВ: Время,
ДниНедели: Обходимое<ДеньНедели>,
ПериодНедель: Число = 1,
ДниВМесяце: Обходимое<Число>? = Неопределено,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ЕженедельноеРасписание

Создает расписание запусков в указанное время ЗапуститьВ указанных дней недели ДниНедели. ПериодНедель - раз в какое число недель запускать задание. Опционально задаются также значения свойств ИсполнятьПропущенное, ВремяНачала и ВремяКонца.

Примеры

// Расписание запуска через неделю по вторникам и четвергам в 8 утра.
знч ВтЧт = Расписание.Еженедельно(
Время{8:00},
ДниНедели = {ДеньНедели.Вторник, ДеньНедели.Четверг},
ПериодНедель = 2)

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = ВтЧт)
Задание.Запланировать()

МоментСледующегоИсполнения

Доступность: КлиентИСервер

МоментСледующегоИсполнения(): Момент?

Вычисляет момент следующего исполнения расписания. Неопределено, если следующего запуска задания по этому расписанию не будет.


Однократно

Доступность: КлиентИСервер Статический

Однократно(
ЗапуститьВ: Момент,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ОднократноеРасписание

Возвращает расписание однократного запуска в указанный момент времени ЗапуститьВ. Опционально задаются также значения свойств ИсполнятьПропущенное, ВремяНачала и ВремяКонца.

Примеры

Запуск задания один раз в 8 утра 18 июня 2021 или сразу после запуска, если в этот момент система не работала.

знч Июнь18 = Расписание.Однократно(Момент{2021-06-18 8:00 Z}, ИсполнятьПропущенное = Истина)

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = Июнь18)
Задание.Запланировать()

Периодическое

Доступность: КлиентИСервер Статический

Периодическое(
Период: Длительность,
ИсполнятьПропущенное: Булево = Ложь,
ВремяНачала: Момент? = Неопределено,
ВремяКонца: Момент|Время|? = Неопределено
): ПериодическоеРасписание

Возвращает расписание постоянных запусков с указанным периодом Период. Задание будет запущено спустя указанный период времени после завершения предыдущего запуска. Значение должно быть положительным и не менее 1 секунды.

Примеры

// Расписание запуска через 3 секунды после окончания предыдущего запуска.
знч ЧастыйПовтор = Расписание.Постоянно()

знч Задание = ЗапланированныеЗадания.Создать(&МойМодуль.МойМетод)
Задание.Настроить(Ключ = "МоеЗадание", Расписание = ЧастыйПовтор)
Задание.Запланировать()

Список унаследованных методов

Объект

ВСтроку, ПолучитьТип, Представление