1С: Запрет запуска дубля регламентного задания
Иногда бывает что регламентное задание нужно запускать как можно чаще, но вот в чём дело: при запуске есть вероятность что предыдущее задание еще не завершено. В результате они как матрешка будут всё расти и расти…ну и наверное в конце концов будет какой-то коллапс.
Решение: да простое. Просто перед запуском задания, убедимся что предыдущая копия уже отработала. Во первых, нужно у регламентного задания прописать ключ. А во вторых, непосредственно перед запуском объемной части задания, нужно проверять фоновые задания, и если задание с таким ключём в списке активных…то ничего далее не делать:
1 2 3 4 5 6 7 8 9 10 |
Функция ОтправитьДанныеИзПланаОбменаРегламентно() // проверим, а вдруг еще не завершено предыдущее регламентное задание? Фоновые = ФоновыеЗадания.ПолучитьФоновыеЗадания(); Для Каждого Фоновое из Фоновые Цикл Если Найти(Фоновое.Ключ, "отправка_данных_шины") > 0 И Фоновое.Состояние = СостояниеФоновогоЗадания.Активно Тогда Возврат 0; КонецЕсли; КонецЦикла; ... КонецФункции |