Примеры работы с планировщиком (фоновые задания)

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

Создание задачи планировщика
// создание новой задачи
Процедура СоздатьЗадачаПланировщика()
Задача = Новый Планировщик.Задача;
Задача.Имя = «МоиФоновыеЗадания»;
Задача.Описание = «Пример простой задачи планировщика»;
Задача.Действие = Новый ОписаниеДействия(«Процедура», «МоиПроцедуры.ФоновыеЗадания»);
Задача.ИнтервалВыполнения = 10; // интервал выполнения, сек
Задача.Периодичность = Периодичность.Ежечасно;
Задача.Установить();
КонецПроцедуры

// выполнение задачи вручную
Процедура ВыполнитьЗадачаПланировщика()
Задача = Планировщик.Задачи.НайтиПоИмени(«МоиФоновыеЗадания»);
Задача.Выполнить();
КонецПроцедуры

Отмена задачи планировщика
// удаление задачи
Процедура УдалитьЗадачаПланировщика()
Задача = Планировщик.Задачи.НайтиПоИмени(«МоиФоновыеЗадания»);
Задача.Удалить();
КонецПроцедуры

Запуск задачи по расписанию
// настройка расписания выполнения
Процедура НастроитьПланировщикПоРасписанию()
Задача = Планировщик.Задачи.НайтиПоИмени(«МоиФоновыеЗадания»);
Задача.ИнтервалВыполнения = 10;
Задача.Периодичность = Периодичность.Ежечасно;
Задача.Включить();
КонецПроцедуры

// отмена выполнения по расписанию
Процедура ОтключитьПланировщикПоРасписанию()
Задача = Планировщик.Задачи.НайтиПоИмени(«МоиФоновыеЗадания»);
Задача.Включить = Ложь;
КонецПроцедуры

Передача параметров фоновой задаче
// передача параметров задаче планировщика
Процедура ПередачаПараметровФоновойЗадаче()
Задача = Планировщик.Задачи.НайтиПоИмени(«МоиФоновыеЗадания»);
Задача.Действие = Новый ОписаниеДействия(«Процедура», «МоиПроцедуры.ФоновыеЗаданияПараметры»);
Задача.Действие.Параметры.Вставить(«Параметр1», «Значение1»);
Задача.Действие.Параметры.Вставить(«Параметр2», «Значение2»);
Задача.Установить();
КонецПроцедуры

// обработка параметров в фоновой задаче
Процедура ФоновыеЗаданияПараметры()
Параметр1 = Параметры.Параметр1;
Параметр2 = Параметры.Параметр2;
Сообщить(«Параметр1 = » + Параметр1);
Сообщить(«Параметр2 = » + Параметр2);
КонецПроцедуры

Поделиться с друзьями
Smirnov code
Добавить комментарий