Как остановить регламентные задания в 1С 8.3 и запретить их запуск
Содержание
Отключить фоновое задание 1С из конфигуратора можно так: откройте дерево метаданных, ветку Общие → Регламентные задания, выберите задание и в палитре свойств снимите флажок «Использование», затем обновите конфигурацию базы данных (F7). Если нужно разом остановить все задания базы, проще не трогать конфигурацию, а включить флажок «Блокировка регламентных заданий включена» в свойствах информационной базы в консоли кластера.
Типичная ситуация: база тормозит, в списке активных пользователей висят сеансы «Фоновое задание», обмен или загрузка курсов запускается каждые пять минут и падает с ошибкой. Решение зависит от того, нужно убрать одно задание или остановить все, и от того, файловая у вас база или серверная.
Всё описанное относится к платформе 8.3 и работает одинаково в Бухгалтерии 3.0, ЗУП 3.1, УТ 11 и других конфигурациях: регламентные задания — механизм платформы, а не конкретного решения.
Подготовка: права, режим базы и резервная копия
Сначала разберитесь, что именно вы собираетесь отключать. В 1С два близких понятия:
- ⏰ Регламентное задание — объект конфигурации с расписанием. Платформа сама запускает его по времени.
- ⚙️ Фоновое задание — конкретный запуск процедуры в отдельном сеансе. Его порождает регламентное задание или код программы (например, длительная операция формирования отчёта).
Отключают, как правило, регламентное задание: тогда перестают появляться и порождаемые им фоновые задания.
Какие права нужны
| Действие | Что требуется |
|---|---|
| Вход в конфигуратор | пользователь базы с правом «Администрирование» |
| Изменение свойств задания в типовой конфигурации | включённая возможность изменения в настройках поддержки |
| Блокировка заданий в консоли кластера | права администратора кластера (если он задан) и логин/пароль администратора базы |
| Просмотр журнала регистрации | право «Журнал регистрации» или полные права |
Файловая или клиент-серверная база
Это главный вопрос. В клиент-серверном варианте задания выполняет сервер 1С по расписанию, даже если ни один пользователь не вошёл в программу. В файловом варианте заданиями управляет клиентское приложение или веб-сервер: пока никто не открыл базу, задания не идут.
Правка конфигурации и обновление конфигурации базы данных — изменение рабочей базы. Перед этим выгрузите базу в .dt или сделайте копию средствами СУБД. Для остальных способов из этой статьи копия не обязательна: они не меняют структуру данных.
Где найти регламентные задания в конфигураторе
Откройте базу в режиме «Конфигуратор» и раскройте дерево конфигурации: Конфигурация → Открыть конфигурацию. Дальше путь такой:
- В дереве разверните ветку Общие.
- Внутри найдите Регламентные задания.
- Двойной щелчок по заданию открывает палитру свойств (или
Alt+Enter).
В палитре свойств интересны пять полей:
- ✅ Использование — включено ли задание.
- 🔁 Предопределенное — платформа сама создаёт один экземпляр задания в базе.
- 📅 Расписание — когда запускать.
- 🧩 Имя метода — процедура общего модуля, которую вызывает задание. По ней удобно искать код через
Ctrl+F. - 🔂 Количество повторных попыток при аварийном завершении и Интервал повторных попыток — сколько раз и с каким шагом перезапускать упавшее задание.
💡 В типовых конфигурациях заданий десятки. Чтобы быстро найти нужное, встаньте на ветку Регламентные задания и начните набирать имя — дерево отфильтруется. Имя метода подскажет, что делает задание: например, в нём обычно есть слова «Обмен», «Курсы», «Классификатор», «Полнотекстов».
Как понять, какие задания сейчас выполняются
Прежде чем отключать, посмотрите, кто реально нагружает базу.
Список активных пользователей
В конфигураторе откройте Администрирование → Активные пользователи. В колонке приложения сеансы фоновых заданий подписаны как «Фоновое задание». Если такой сеанс висит часами — это кандидат на разбор.
Консоль кластера
В клиент-серверной базе картина полнее в «Администрирование серверов 1С Предприятия»:
- Разверните кластер →
Информационные базы→ нужная база →Сеансы. - Отсортируйте по колонке приложения и найдите «Фоновое задание».
- Посмотрите время начала, текущий вызов и объём прочитанных данных — так видно, что задание действительно работает, а не ждёт блокировку.
Тот же список можно получить утилитой rac: команда rac session list с указанием кластера и базы. Точный набор параметров смотрите в rac help session.
Список в режиме 1С:Предприятие
В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11 и другие) есть форма управления заданиями: Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания. На вкладке регламентных заданий видны состояние и время последнего запуска, на вкладке фоновых — текущие и завершённые запуски с текстом ошибок.
Способы отключить фоновые задания 1С: пошагово
Способов четыре. Они отличаются охватом и тем, затрагивают ли конфигурацию.
| Способ | Что отключает | Меняет конфигурацию | Когда подходит |
|---|---|---|---|
| Свойство «Использование» в конфигураторе | одно задание навсегда | да | своя или доработанная конфигурация |
| Форма «Регламентные и фоновые задания» | одно задание в этой базе | нет | типовая конфигурация на поддержке |
Блокировка в консоли кластера или через rac | все задания базы | нет | копия базы, обновление, разбор зависаний |
Параметр запуска /AllowExecuteScheduledJobs | все задания в файловой базе | нет | файловый вариант |
Способ 1. Снять «Использование» в конфигураторе
- Если конфигурация типовая и на поддержке, откройте
Конфигурация → Поддержка → Настройка поддержкии включите возможность изменения. Для нужного задания выберите режим «Объект поставщика редактируется с сохранением поддержки». - Откройте свойства задания и снимите флажок Использование.
- Сохраните конфигурацию и выполните
Конфигурация → Обновить конфигурацию базы данных(F7). - Зайдите в режим 1С:Предприятие и проверьте состояние задания в списке регламентных заданий.
Включение возможности изменения усложняет все будущие обновления: при каждом новом релизе придётся сравнивать и объединять конфигурации. Ради одного выключенного задания в типовой базе этот способ не нужен — используйте способ 2.
Ещё один нюанс. У предопределённого задания настройки, однажды записанные в базе из режима 1С:Предприятие или кодом, хранятся в самой базе. Поэтому после правки в конфигураторе всегда проверяйте, что видит программа, — шаг 4 не формальность.
Способ 2. Отключить задание без правки конфигурации
- Откройте
Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания. - Найдите задание в списке и откройте его карточку.
- Снимите флажок включения задания и запишите карточку.
Конфигурация остаётся на полной поддержке, а настройка живёт в данных базы. Если в вашей конфигурации нет такой формы, ту же работу делает внешняя обработка «Консоль заданий» с диска ИТС.
Способ 3. Заблокировать все задания на сервере 1С
Это самый быстрый способ «выключить всё» в клиент-серверной базе.
- Откройте «Администрирование серверов 1С Предприятия».
- Выберите
Информационные базы→ база →Свойства. - Введите логин и пароль администратора базы.
- Включите флажок Блокировка регламентных заданий включена и нажмите «ОК».
То же самое через командную строку: rac infobase update с параметром --scheduled-jobs-deny=on и данными администратора базы. Синтаксис для своей версии сверьте с rac help infobase.
Блокировка не прерывает задания, которые уже выполняются. Она лишь запрещает новые запуски. Чтобы остановить зависшее задание немедленно, завершите его сеанс: в консоли кластера Сеансы → сеанс «Фоновое задание» → «Удалить».
Принудительное завершение сеанса откатывает незавершённую транзакцию. Если задание вело обмен или закрытие месяца, часть данных может остаться в промежуточном состоянии. Завершайте такие сеансы вне рабочего времени и после этого перезапускайте операцию вручную.
💡 Флажок блокировки обязательно ставят на любой копии рабочей базы: тестовой, для обновления, для разработчика. Иначе копия начнёт отправлять обмены, письма и выгрузки от имени настоящей организации.
Способ 4. Файловая база: параметр запуска
В файловой базе задания выполняет клиентский сеанс. Чтобы конкретный компьютер не запускал их, добавьте в параметры запуска базы (Изменить → Дополнительные параметры запуска в окне выбора баз) строку:
/AllowExecuteScheduledJobs -Off
Обратный вариант — -Force: задания будут выполняться именно в этом клиенте. Удобно назначить для заданий один компьютер, который включён весь день, а на остальных выключить.
Расписание и периодичность регламентного задания
Иногда задание не нужно выключать — достаточно запускать его реже. Например, загрузку курсов валют раз в сутки вместо каждого часа.
В конфигураторе в свойствах задания нажмите на ссылку Расписание. Откроется форма с вкладками:
- 📅 Общее — даты начала и окончания действия расписания, повтор через N дней.
- 🕐 Дневное — время начала и окончания, «Повторять через» N секунд, пауза между запусками, «Завершать через».
- 📆 Недельное и Месячное — дни недели, числа месяца, месяцы.
Внизу формы платформа пишет расписание человеческим языком, например «каждый день; с 01:00:00; повторять каждые 3600 секунд». Сверяйтесь с этой строкой.
В типовой базе расписание меняют там же, где отключают, — в карточке задания в режиме 1С:Предприятие. Конфигурацию снова трогать не надо.
💡 Регламентное задание не стартует, пока не закончился его предыдущий запуск. Если задание выполняется 20 минут, а повтор стоит каждые 5 минут, реальный интервал будет около 20 минут. Частое расписание на тяжёлом задании ничего не ускоряет, а только держит нагрузку постоянно.
Отдельно настройте повторные попытки при аварийном завершении. Значение 3 с интервалом 10 секунд при «падающем» обмене даёт четыре ошибки подряд в журнале на каждом запуске. Для заданий, которые зависят от внешнего сервиса, лучше 1–2 повтора с интервалом в несколько минут.
Диагностика зависших фоновых заданий и журналы
Если задание зависает или падает, само отключение лечит симптом. Причину ищите так.
Журнал регистрации
В конфигураторе: Администрирование → Журнал регистрации. Установите отбор по событиям группы «Фоновое задание»: запуск, успешное завершение, ошибка исполнения, отмена. Запуски без парного завершения — это зависшие или убитые задания. В событии ошибки виден текст исключения и строка модуля.
Что обычно стоит за зависанием
- 🔒 Ожидание блокировки. Задание ждёт данные, которые держит пользователь или другое задание. В консоли кластера у такого сеанса растёт время ожидания блокировок.
- 🌐 Внешний ресурс не отвечает. Обмен через веб-сервис, почта, загрузка классификаторов — задание ждёт ответа сервера.
- 📈 Объём данных. Полнотекстовая индексация или пересчёт итогов на большой базе честно работают часами.
- 🐞 Ошибка в доработке. Бесконечный цикл или запрос без отборов в своём коде.
Технологический журнал
Для сложных случаев на сервере включают технологический журнал файлом logcfg.xml в каталоге conf платформы. Для начала достаточно собирать события исключений (EXCP) и ожидания на управляемых блокировках. Журнал быстро растёт: задайте срок хранения в часах и выключите сбор после разбора.
Отладка задания из конфигуратора
Код задания можно пройти отладчиком. В клиент-серверной базе для этого на сервере 1С должна быть включена отладка. В конфигураторе запустите отладку, откройте Отладка → Подключение, включите автоматическое подключение к фоновым заданиям и поставьте точку останова в процедуре из свойства «Имя метода». Через «Выполнить сейчас» в форме заданий запустите его вручную — отладчик остановится на вашей точке.
Если отключить не получается
- 🔄 Задание снова включилось. Скорее всего, его включает код: часть типовых механизмов сама включает связанные задания при включении функциональной опции (например, обмена или интеграции). Отключайте саму опцию в настройках раздела, а не только задание.
- 🖥 Задания идут на копии базы, хотя блокировка стоит. Проверьте, что флажок установлен именно у этой базы в кластере, а не у рабочей с похожим именем.
- 📁 Файловая база выполняет задания на чужом компьютере. Параметр
/AllowExecuteScheduledJobs -Offнадо прописать на каждом рабочем месте, где он нужен, — настройка хранится в списке баз пользователя. - 🧱 Нет прав на консоль кластера. Обратитесь к администратору сервера 1С: без его учётной записи блокировку не поставить.