Создать задания очереди по шаблонам текущей области. Создает в текущей области данных задания по шаблонам.
// Создает в текущей области данных задания по шаблонам.
Процедура СоздатьЗаданияОчередиПоШаблонамВТекущейОбласти() Экспорт
Если НЕ РаботаВМоделиСервиса.РазделениеВключено() Тогда
Возврат;
КонецЕсли;
НачатьТранзакцию();
Попытка
Блокировка = Новый БлокировкаДанных;
Блокировка.Добавить("Справочник.ОчередьЗаданийОбластейДанных");
Блокировка.Заблокировать();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Очередь.Ссылка КАК Идентификатор,
| Шаблоны.Ссылка КАК Шаблон,
| ЕСТЬNULL(Очередь.ДатаНачалаПоследнегоЗапуска, ДАТАВРЕМЯ(1, 1, 1)) КАК ДатаНачалаПоследнегоЗапуска,
| ЧасовыеПояса.Значение КАК ЧасовойПояс,
| Шаблоны.Расписание КАК Расписание,
| Шаблоны.Использование КАК Использование,
| Шаблоны.Ключ КАК Ключ
|ИЗ
| Справочник.ШаблоныЗаданийОчереди КАК Шаблоны
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ОчередьЗаданийОбластейДанных КАК Очередь
| ПО Шаблоны.Ссылка = Очередь.Шаблон
| ЛЕВОЕ СОЕДИНЕНИЕ Константа.ЧасовойПоясОбластиДанных КАК ЧасовыеПояса
| ПО (ИСТИНА)";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Если ЗначениеЗаполнено(Выборка.Идентификатор) Тогда
Задание = Выборка.Идентификатор.ПолучитьОбъект();
Иначе
Задание = Справочники.ОчередьЗаданийОбластейДанных.СоздатьЭлемент();
Задание.Шаблон = Выборка.Шаблон;
КонецЕсли;
Задание.Использование = Выборка.Использование;
Задание.Ключ = Выборка.Ключ;
Задание.ЗапланированныйМоментЗапуска =
ОчередьЗаданийСлужебный.ПолучитьЗапланированныйМоментЗапускаЗадания(Выборка.Расписание.Получить(),
Выборка.ЧасовойПояс,
Выборка.ДатаНачалаПоследнегоЗапуска);
Если ЗначениеЗаполнено(Задание.ЗапланированныйМоментЗапуска) Тогда
Задание.СостояниеЗадания = Перечисления.СостоянияЗаданий.Запланировано;
Иначе
Задание.СостояниеЗадания = Перечисления.СостоянияЗаданий.НеЗапланировано;
КонецЕсли;
Задание.Записать();
КонецЦикла;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ОбновитьЗаданияОчередиПоШаблонам (БСП)
ПриПолученииСпискаШаблонов (БСП)
ЗаполнитьОчередьИзвлеченияТекста (БСП)
СоздатьВременнуюТаблицуРегистраторовРегистраДляОбработки (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)