написал обработку по включению рег. задания отключенного в др обработке.
Процедура ВосстановитьВыполнениеРегламента(МассивРегламент, МассивФоновые) Экспорт
/// Запускаем выполнение отмененных фоновых заданий
Для Каждого ТекЗаданиеФон Из МассивФоновые Цикл
// получаем фоновое задание по идентификатору задания из массива
ЗаданиеФон = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ТекЗаданиеФон.УникальныйИдентификатор);
Если ЗаданиеФон.Состояние <> СостояниеФоновогоЗадания.Завершено Тогда
// если задание не было завершено, то повторно запустим его выполнение
ФоновыеЗадания.Выполнить(ЗаданиеФон.ИмяМетода, , ЗаданиеФон.Ключ, ЗаданиеФон.Наименование);
КонецЕсли;
КонецЦикла;
/// После выполнения всех необходимых операций с базой, запускаем обратно регламентные задания
Для Каждого ТекЗаданиеРег Из МассивРегламент Цикл
ТекЗаданиеРег.Использование = Истина;
Попытка
ТекЗаданиеРег.Записать();
Исключение
//Сообщить(ОписаниеОшибки());
КонецПопытки;
КонецЦикла;
КонецПроцедуры
все выполняется в модуле с привилегированными правами.
но зараза не включает рег задания из массива. почему не могу понять.
так... корректировка вопроса.
Есть Процедура выполняющий определенный алгоритм. в ней сначала вызывается функция отключения рег. задания, а потом функция включения рег. задания(см выше). вот функция отключает рег. задание, а эта функция не включает их обратно.
все... нашел... Скажу одно ребята, проверяйте правильность закрытия транзакций.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший