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

ЗапланированноеЗадание

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

Базовый тип для запланированных заданий, создаваемых на основе элемента проекта.

Сравнение ссылочное

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

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


Свойства

Ключ

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

Ключ: Строка

Ключ, идентифицирующий задание.


Состояние

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

Состояние: ОписаниеЗадания?

Текущее состояние задания. Если задания больше не существует, значение Неопределено. Такое может случиться, если после получения экземпляра задания оно было удалено или успело выполниться в последний раз.


Методы

Возобновить

Доступность: Сервер

Возобновить(): ОписаниеЗадания?
Возобновить выполнение задания по расписанию. Для заданий без расписания не дает никакого эффекта. Для задания, планирование которого не осуществлялось после вызова метода Приостановить, вызывается планирование следующего запуска. Возвращает описание задания или Неопределено, если такого задания нет.

Примеры

// Возобновление заданий, созданных из элемента проекта МоеЗадание 
пер Задания = МоеЗадание.ПолучитьСозданныеПоШаблону().Значения()
Задания.ДляКаждого(Задание -> Задание.Возобновить())

Изменить

Доступность: Сервер

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

Примеры

Создание задания на основе элемента проекта МоеЗадание и изменением расписания.

знч Ключ = "ЗаданиеРассылкиСпама"

пер НовоеЗадание = МоеЗадание.Создать()
НовоеЗадание.Настроить(Расписание = Расписание.Ежемесячно(Время{18:00}, {Месяц.Февраль}, {23}),
Ключ = Ключ,
Описание = "Рассылка праздничного спама")
НовоеЗадание.Запланировать()


знч ИзмЗадание = МоеЗадание.ПолучитьСозданныеПоШаблону()[Ключ].Изменить()
если ИзмЗадание == Неопределено
выбросить новый ИсключениеВыполнения("Нет задания с ключом %{Ключ}")
;

ИзмЗадание.Настроить(Расписание = Расписание.Ежемесячно(Время{8:00}, {Месяц.Март}, {8}))
ИзмЗадание.Запланировать()

Отменить

Доступность: Сервер

Отменить()
Отменяет выполнение запланированного задания, если возможно. Для заданий с расписанием отменяется только текущее исполнение. Если задание уже исполняется в момент вызова, то исполнение прерывается. Метод выполняется синхронно, после его завершения задание отменено.

Исключения

ИсключениеТаймаутаЗадания - в случае долгого прерывания исполнения задания. При возникновении исключения рекомендуется повторить операцию.

Примеры

// Отмена заданий, созданных из элемента проекта МоеЗадание 
пер Задания = МоеЗадание.ПолучитьСозданныеПоШаблону().Значения()
Задания.ДляКаждого(Задание -> Задание.Отменить())

ПолучитьПоследнийРезультат

Доступность: Сервер

ПолучитьПоследнийРезультат(): РезультатЗадания?
Возвращает последний результат задания. Если нет результата для задания с указанным ключом, возвращается Неопределено.


ПолучитьРезультаты

Доступность: Сервер

ПолучитьРезультаты(): ЧитаемыйМассив<РезультатЗадания>
Возвращает результаты задания. Результаты задания возвращаются в обратном хронологическом порядке, т.е. последний по времени результат в первом элементе массива и т.д. Если нет результатов для задания с указанным ключом, возвращается пустой массив.


Приостановить

Доступность: Сервер

Приостановить(): ОписаниеЗадания?
Приостанавливает планирование задания с расписанием. Для заданий без расписания не дает никакого эффекта. Если задание выполняется в момент вызова метода, то его исполнение не прерывается. Возвращает описание задания или Неопределено, если такого задания нет.

Примеры

// Приостановка заданий, созданных из элемента проекта МоеЗадание 
пер Задания = МоеЗадание.ПолучитьСозданныеПоШаблону().Значения()
Задания.ДляКаждого(Задание -> Задание.Приостановить())

Удалить

Доступность: Сервер

Удалить()
Удаляет задание независимо от текущего состояния задания. Если задание выполняется в момент вызова метода, то выполнение прерывается. Метод выполняется синхронно, после его завершения задание удалено.

Исключения

ИсключениеТаймаутаЗадания - в случае долгого прерывания исполнения задания. При возникновении исключения рекомендуется повторить операцию.

Примеры

// Удаление заданий, созданных из элемента проекта МоеЗадание 
пер Задания = МоеЗадание.ПолучитьСозданныеПоШаблону().Значения()
Задания.ДляКаждого(Задание -> Задание.Удалить())

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

Объект

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