Где посмотреть регламентные задания 1С и почему они падают

· 9 мин

Содержание

Список регламентных заданий в типовых конфигурациях 1С 8.3 открывается по пути Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания. Там видно, какое задание включено, по какому расписанию оно работает и чем закончился последний запуск. Подробности ошибки — в журнале регистрации, отбор по событиям фоновых заданий.

Способов узнать и проверить регламентное задание четыре, и выбирают их по ситуации. Пользователю с правами администратора хватает формы в режиме 1С:Предприятие. Если задание вообще не стартует, смотрят журнал регистрации и консоль кластера. Если нужно понять, какой код выполняется, открывают Конфигуратор. Всё сказанное ниже относится к конфигурациям на БСП: Бухгалтерии 3.0, ЗУП 3.1, УТ 11, КА 2, ERP.

Где смотретьЧто узнаетеКому доступно
Форма «Регламентные и фоновые задания»Включено ли, расписание, итог последнего запускаАдминистратор базы
Журнал регистрацииВремя запуска, текст ошибки, пользовательАдминистратор базы
Конфигуратор, ветка Общие → Регламентные заданияИмя метода, ключ, предопределённость, повторыРазработчик
Консоль администрирования серверовБлокировка заданий на уровне базы, фоновые сеансыАдминистратор кластера

Список регламентных заданий и их расписание

Откройте Администрирование → Обслуживание. В группе «Регламентные операции» нажмите ссылку «Регламентные и фоновые задания». Форма состоит из двух вкладок.

  • 📋 Регламентные задания — все задания базы: предопределённые (созданы конфигурацией) и добавленные программно, например обмены по расписанию.
  • ⚙️ Фоновые задания — конкретные запуски: что выполнялось, когда началось и закончилось, с каким состоянием.

В списке регламентных заданий обращайте внимание на три вещи:

  1. Флажок «Включено». Снятый флажок — самая частая причина «задание не работает ». Платформа его просто не запускает.
  2. Расписание. Текстовое описание вида «Каждый день; каждые 3600 секунд». Если расписание пустое, задание не стартует никогда.
  3. Состояние последнего выполнения. «Завершено аварийно» сразу говорит, куда копать дальше.

Двойной щелчок открывает карточку задания. В ней можно поменять расписание, указать пользователя, от имени которого выполняется задание, и задать число повторных попыток при аварийном завершении.

Часть заданий в БП и ЗУП включается не здесь, а из настроек функции. Загрузка курсов валют, классификатора банков, обмен с банком включаются в разделе Администрирование → Интернет-поддержка и сервисы или в настройках самого обмена. Если включить такое задание вручную в общем списке, а функцию оставить выключенной, конфигурация может снова его отключить.

Как узнать, что процесс — это регламентное задание

Бывает обратная ситуация: в базе что-то работает «само», и нужно понять, что именно. Признак один — приложение «Фоновое задание».

  • 👥 Администрирование → Обслуживание → Активные пользователи: в колонке приложения у сеанса стоит «Фоновое задание».
  • 📜 В журнале регистрации у таких записей то же значение в колонке «Приложение».
  • 🖥️ В консоли кластера у сеанса в свойствах указано приложение «Фоновое задание».

Дальше по времени запуска сопоставьте сеанс с вкладкой «Фоновые задания»: там будет имя регламентного задания, которое его породило.

Проверка ошибок через журнал регистрации

Журнал — главный источник правды. Открывается он по пути Администрирование → Обслуживание → Журнал регистрации, в Конфигураторе — через меню Администрирование → Журнал регистрации.

Платформа пишет каждый запуск фонового задания событиями группы «Фоновое задание». Их служебные коды удобно знать, если журнал выгружается в XML или разбирается сторонним инструментом:

Событие в интерфейсеСлужебный кодЧто значит
Фоновое задание. Запуск_$Job$_.StartЗадание стартовало
Фоновое задание. Успешное завершение_$Job$_.SucceedОтработало без ошибок
Фоновое задание. Ошибка выполнения_$Job$_.FailУпало с исключением
Фоновое задание. Отмена_$Job$_.CancelПрервано вручную или программно

Как настроить отбор

  1. В журнале нажмите «Установить отбор».
  2. На странице событий оставьте отмеченными только события фонового задания.
  3. Уровень важности — «Ошибка», чтобы не листать тысячи успешных запусков.
  4. Задайте интервал: сутки, в которые задание должно было отработать.
  5. Откройте запись двойным щелчком. В поле комментария — полный текст исключения со стеком вызовов.

Текст ошибки обычно содержит имя модуля и номер строки, например {ОбщийМодуль.РаботаСКурсамиВалют.Модуль(…)}. По нему разработчик сразу найдёт место сбоя.

Журнал хранит записи по настройке «Журнал регистрации» в Конфигураторе. Если там стоит запись только ошибок или журнал периодически сокращают, событий запуска за прошлые месяцы может не быть. Для разбора инцидента выгружайте нужный период до сокращения.

Отчёт о длительности и сбоях заданий

Листать журнал вручную неудобно, когда заданий десятки. В БСП есть отчёт «Анализ журнала регистрации», у которого есть вариант «Длительность работы регламентных заданий». Его ищите в Администрирование → Обслуживание, в группе ссылок «Отчеты администратора» (в отдельных релизах набор ссылок группы немного другой).

Отчёт строит диаграмму: какое задание когда запускалось, сколько длилось и пересекалось ли с другими. Он полезен в трёх случаях:

  • ⏱️ задание идёт дольше интервала расписания и «наезжает» само на себя;
  • 🔁 два тяжёлых задания стартуют в одно время и спорят за блокировки;
  • 🌙 ночные операции не успевают до утра.

Второй источник — вкладка «Фоновые задания» в той же форме. Откройте запуск с состоянием «Завершено аварийно»: в карточке выводится информация об ошибке и сообщения, которые задание успело выдать. Это быстрее журнала, но хранится только за недавний период.

Регламентные задания в метаданных конфигурации

Чтобы понять, что именно делает задание, нужен Конфигуратор. Откройте дерево конфигурации и разверните ветку Общие → Регламентные задания. Каждый объект здесь — описание задания, а не конкретный запуск.

Ключевые свойства в палитре свойств:

СвойствоЗачем смотреть
Имя методаПроцедура, которую вызывает задание, в формате ОбщийМодуль.Процедура
ПредопределенноеДа — задание создаётся автоматически и существует в одном экземпляре
ИспользованиеВключено ли задание по умолчанию
КлючНе даёт запустить два экземпляра с одинаковым ключом одновременно
РасписаниеЗначение по умолчанию; в базе его меняют без Конфигуратора
Количество повторных попыток при аварийном завершенииСколько раз платформа перезапустит упавшее задание
Интервал повторных попытокПауза между повторами, в секундах

Щёлкните по «Имени метода» — откроется общий модуль на нужной процедуре. Модуль должен выполняться на сервере, иначе задание не запустится.

Непредопределённые задания (например, задания обменов) создаются программно и в ветке метаданных видны только как «шаблон». Конкретные экземпляры с параметрами вы увидите лишь в форме «Регламентные и фоновые задания».

Диагностика на стороне сервера 1С

В клиент-серверной базе задания выполняет кластер, и часть причин сбоя видна только оттуда.

Блокировка заданий в свойствах базы

Откройте консоль администрирования серверов 1С. Выберите кластер, затем Информационные базы, откройте свойства нужной базы. Флажок «Блокировка регламентных заданий включена» запрещает запуск всех заданий базы разом.

Его часто ставят на тестовых копиях, чтобы копия не отправила отчёты и не скачала выписки вместо рабочей базы. Потом базу переносят в работу — и флажок забывают снять.

То же самое через утилиту rac (ей нужен запущенный сервис ras):

rac cluster list
rac infobase summary list --cluster=<uuid кластера>
rac infobase info --cluster=<uuid кластера> --infobase=<uuid базы> --infobase-user=Администратор --infobase-pwd=<пароль>

В выводе последней команды ищите поле scheduled-jobs-deny: значение on означает, что задания заблокированы. Параметры для изменения смотрите в справке rac help infobase.

Фоновые сеансы и рабочие процессы

В той же консоли откройте список сеансов базы. Фоновые задания видны как сеансы приложения «Фоновое задание». Если такой сеанс висит часами, а журнал не показывает завершения, задание зависло на блокировке или во внешнем вызове.

Для списка сеансов из командной строки:

rac session list --cluster=<uuid кластера> --infobase=<uuid базы>

Принудительное завершение сеанса прерывает задание посреди транзакции. Данные откатятся, но обмен или загрузка выполнятся заново при следующем запуске. Завершайте такие сеансы, когда пользователи не работают с той же частью данных, и предупредите их заранее.

Файловая база

У файловой базы кластера нет. Регламентные задания выполняет один из запущенных клиентских сеансов, а БСП дополнительно запускает их из клиента по таймеру. Пока базу никто не открыл, задания стоят.

Для файловой базы на сервере без пользователей есть два выхода:

  • 🖥️ держать открытым отдельный сеанс 1С под служебным пользователем;
  • 🧩 на платформе с номером не ниже 8.3.20 запустить базу через автономный сервер ibsrv, тогда задания выполняются без клиента.

Почему регламентное задание не выполняется

Диагностика: выберите симптом

Если поменяли расписание, а задание стартует по старому, перезапускать службу сервера не нужно. Дождитесь ближайшего цикла проверки расписания платформой — обычно это до минуты — и проверьте журнал снова.

Ручной запуск и отладка задания

Проверить исправление, не дожидаясь ночи, можно прямо из формы.

Запуск из формы 1С:Предприятие

  1. Откройте Администрирование → Обслуживание → Регламентные и фоновые задания.
  2. Выделите задание в списке.
  3. Нажмите «Выполнить сейчас».
  4. Перейдите на вкладку «Фоновые задания» и обновите список. Новый запуск появится сверху.
  5. Дождитесь состояния «Завершено» или «Завершено аварийно» и откройте запись.

В клиент-серверной базе задание выполняется в фоне на сервере, как при обычном запуске по расписанию. В файловой базе оно отрабатывает в текущем сеансе, поэтому интерфейс может «подвиснуть» до окончания.

Ручной запуск обмена или выгрузки в рабочей базе выполнит реальную операцию: отправит данные, загрузит выписку, создаст документы. Для проверки на копии сначала включите там блокировку работы с внешними ресурсами.

Пошаговая отладка в Конфигураторе

Когда текст ошибки не объясняет причину, ставят точку останова.

  1. Сервер 1С должен работать с включённой отладкой (служба запущена с ключом -debug). Для файловой базы этого не требуется.
  2. В Конфигураторе откройте процедуру из свойства «Имя метода» и поставьте точку останова.
  3. В меню Отладка → Подключение откройте настройку автоматического подключения и отметьте фоновые задания.
  4. Запустите задание кнопкой «Выполнить сейчас».
  5. Отладчик остановится на точке, дальше идите по шагам и смотрите значения переменных.

Включение отладки на рабочем сервере требует перезапуска службы 1С и обрывает сеансы пользователей. Делайте это в нерабочее время или на тестовом сервере с копией базы.

Альтернатива без отладчика — вызвать ту же процедуру из внешней обработки в серверной процедуре. Результат увидите сразу, а ошибка покажется в обычном окне сообщения.

Частые вопросы

Можно ли посмотреть регламентные задания без прав администратора?
Нет. Форма «Регламентные и фоновые задания» и журнал регистрации доступны только пользователям с административными ролями. Обычный пользователь увидит лишь свои сообщения.
Чем регламентное задание отличается от фонового?
Регламентное — это описание: что запускать и по какому расписанию. Фоновое — конкретный запуск. Одно регламентное задание порождает много фоновых.
Как узнать, когда задание запустится в следующий раз?
Откройте карточку задания и посмотрите расписание. Платформа запускает задание при ближайшем совпадении условий расписания, если предыдущий экземпляр уже завершён.
Можно ли удалить предопределённое регламентное задание?
Нет, его создаёт конфигурация. Можно только снять флажок «Включено». Непредопределённые задания, созданные обменами, удаляются вместе с настройкой обмена.
Сколько хранится история фоновых заданий?
Вкладка «Фоновые задания» показывает недавние запуски. Полная история — в журнале регистрации, на срок, который задан в его настройках.