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