Проверить определения регламентных заданий, не запуская их

Учебные задачи

Составляем список настроек задания из конфигурации. Отличаем определение, повтор после ошибки и реальное расписание экземпляра.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.


Сообщить(СтрШаблон("Определений заданий: %1", Метаданные.РегламентныеЗадания.Количество()));
Для Каждого Задание Из Метаданные.РегламентныеЗадания Цикл
    Сообщить(СтрШаблон("%1 (%2): %3", Задание.Имя, Задание.Синоним, Задание.Наименование));
    Сообщить(Задание.Комментарий);
    Сообщить("Метод: " + Задание.ИмяМетода);
    Сообщить(СтрШаблон("Использование %1; предопределенное %2; ключ %3",
        Задание.Использование, Задание.Предопределенное, Задание.Ключ));
    Сообщить(СтрШаблон("Повторов после аварии %1; интервал %2 секунд",
        Задание.КоличествоПовторовПриАварийномЗавершении,
        Задание.ИнтервалПовтораПриАварийномЗавершении));
    Сообщить(Задание.Расписание = Неопределено);
КонецЦикла;

Разбор по шагам

  1. Читаем определения из Метаданные.РегламентныеЗадания. Никакие методы выполнения заданий не вызываются.

  2. ИмяМетода — строка имени обработчика, не готовая команда для выполнения внешнего текста.

  3. ИнтервалПовтораПриАварийномЗавершении измеряется в секундах и относится к повтору после аварии, не к обычной периодичности.

  4. В локальном API свойство метаданных Расписание имеет тип Неопределено. Реальное расписание экземпляра надо получать через отдельный API заданий, не из этой строки.

Как проверить результат

  1. Настройки метода и повторов совпадают со свойствами задания в Конфигураторе.

  2. Сравнение Расписание = Неопределено даёт Истина; пример не показывает мнимую дату следующего запуска.

  3. Если заданий нет, выведено количество 0; не создаётся новое задание.

Ожидаемый результат

Получен безопасный список определений заданий и их аварийных повторов.

На что обратить внимание

  1. Использование в метаданных не доказывает, что планировщик сейчас работает или что последний запуск был успешным.

  2. Фоновые задания, регламентные задания и история исполнения — разные объекты. Для диагностики исполнения нужны отдельные проверки.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.