Блокировка регламентных и фоновых заданий в серверной базе 1С: три способа и их последствия
Содержание
Чтобы отключить фоновые задания в 1С 8.3 на сервере сразу для всей базы, откройте консоль администрирования серверов 1С, зайдите в свойства информационной базы и поставьте флажок Блокировка регламентных заданий включена. Без графической консоли то же самое делает утилита rac с параметром --scheduled-jobs-deny=on. Новые запуски по расписанию прекратятся, перезапускать службу не нужно.
Типичная ситуация: развернули копию рабочей базы для тестов, а она начала сама гонять обмены, слать письма и грузить документы из ЭДО. Или ночное задание раз за разом подвешивает сервер. Ниже — как остановить задания целиком или выборочно, как это сделать из скрипта и что перестанет работать после отключения.
Что именно отключается: регламентные и фоновые задания
В 1С два похожих механизма, и путаница между ними — главная причина вопроса «я всё отключил, а оно работает».
- ⏰ Регламентное задание — запускается платформой по расписанию: загрузка курсов валют, обмен данными, обновление полнотекстового индекса, получение писем, отложенная обработка данных после обновления.
- ⚙️ Фоновое задание — запускается кодом конфигурации. Каждое регламентное задание при выполнении тоже становится фоновым. Но фоновые задания создаются и вручную: длительное формирование отчёта, закрытие месяца , групповое перепроведение.
Блокировка в консоли кластера запрещает запуск регламентных заданий. Фоновые задания, которые пользователь запустил сам кнопкой в программе, продолжат выполняться: без них не построится тяжёлый отчёт и не пройдёт закрытие месяца. Полностью запретить фоновые задания нельзя, да и не нужно.
На практике запрос «отключить фоновые задания» почти всегда означает «остановить всё, что работает по расписанию». Это и делает флажок блокировки.
| Способ | Что отключает | Когда подходит | Риски |
|---|---|---|---|
| Консоль кластера | Все регламентные задания базы | Тестовая копия, разбор проблемы, обслуживание | Встанут обмены и обновления данных |
Утилита rac | То же, из командной строки | Linux, скрипты, массовые операции | Ошибка в UUID — заблокируете не ту базу |
| Конфигуратор | Конкретное задание на уровне метаданных | Доработанная конфигурация, задание не нужно вообще | Изменение конфигурации, снятие с поддержки |
| Карточка задания в программе | Конкретное задание в этой базе | Типовая конфигурация на БСП | Почти нет, легко вернуть |
Способ 1. Блокировка через консоль администрирования серверов 1С
Консоль ставится вместе с платформой как компонент «Администрирование сервера 1С:Предприятия». На Windows её ярлык лежит в меню «Пуск» в папке версии 1С.
Пошагово
- Запустите консоль от имени пользователя с правами администратора кластера.
- Разверните дерево:
Central 1C:Enterprise 8.3 servers→ имя сервера →Кластеры→ кластер (обычно с портом 1541) →Информационные базы. - Щёлкните нужную базу правой кнопкой и выберите
Свойства. - Консоль запросит логин и пароль администратора информационной базы — это пользователь 1С с полными правами, не учётная запись Windows. Если в базе нет пользователей, оставьте поля пустыми.
- Установите флажок
Блокировка регламентных заданий включена. - Нажмите
ОК.
Блокировка действует сразу. Задания, которые уже выполнялись в момент установки флажка, доработают до конца. Новые по расписанию не стартуют.
Если консоль не открывается
Самая частая проблема — оснастка выдаёт ошибку при запуске или показывает пустое окно. Обычно не зарегистрирована библиотека radmin.dll нужной версии. Регистрируют её из командной строки, запущенной от администратора:
regsvr32 "C:\Program Files\1cv8\8.3.25.1374\bin\radmin.dll"
Номер в пути замените на версию платформы, установленную на сервере. Версия консоли должна совпадать с версией сервера 1С: старая оснастка к новому серверу не подключится.
Блокировка при создании базы
Если вы разворачиваете копию рабочей базы, флажок можно поставить ещё на этапе создания. В окне создания информационной базы в консоли есть пункт Установить блокировку регламентных заданий. Отметьте его до загрузки .dt — тогда копия не успеет выполнить ни одного обмена.
Копия рабочей базы без блокировки регламентных заданий может выгрузить данные в рабочий узел обмена или отправить документы контрагентам. Блокируйте задания до первого запуска копии.
Способ 2. Отключение из командной строки через rac
На сервере под Linux графической консоли нет. Там, а также в скриптах обслуживания, используют утилиту rac. Она работает через сервер администрирования ras, который должен быть запущен (по умолчанию слушает порт 1545).
Пошагово
- Узнайте идентификатор кластера:
rac cluster list
- Найдите идентификатор базы:
rac infobase summary list --cluster=<uuid-кластера>
- Включите блокировку регламентных заданий:
rac infobase update --cluster=<uuid-кластера> --infobase=<uuid-базы> \
--infobase-user="Администратор" --infobase-pwd="пароль" \
--scheduled-jobs-deny=on
Если на кластере заданы администраторы, добавьте --cluster-user и --cluster-pwd. Если ras работает на другом компьютере, первым аргументом укажите адрес: rac srv1c:1545 cluster list.
Снять блокировку — та же команда с --scheduled-jobs-deny=off. Проверить текущее состояние можно командой rac infobase info с теми же параметрами кластера, базы и пользователя.
Через rac удобно блокировать задания в нескольких тестовых базах одним скриптом. Перед массовым запуском сверьте список UUID: имена баз в выводе summary list идут рядом с идентификаторами.
Способ 3. Отключение конкретного задания в Конфигураторе
Конфигуратор не умеет ставить общую блокировку. Зато в нём можно выключить отдельное регламентное задание на уровне конфигурации.
- Откройте базу в режиме Конфигуратора.
- В дереве метаданных разверните
Общие→Регламентные задания. - Откройте свойства нужного задания.
- Снимите флажок
Использование. - Сохраните конфигурацию и обновите конфигурацию базы данных.
Это изменение самой конфигурации. В типовой базе на поддержке придётся включить возможность изменения, а при следующем обновлении правку нужно будет отслеживать при сравнении. Поэтому для типовых решений этот способ — последний вариант, а не первый.
После обновления конфигурации базы данных зайдите в программу и проверьте список заданий: в карточке задания может храниться своё значение, и именно оно видно пользователю.
Как выключить одно фоновое задание и оставить остальные
Если мешает одна конкретная операция — например, ночная загрузка из банка или обмен с сайтом, — блокировать всё не нужно. В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11, Комплексная автоматизация, ERP) есть обработка со списком всех заданий.
| Конфигурация | Где список заданий |
|---|---|
| Бухгалтерия предприятия 3.0 | Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания |
| ЗУП 3.1 | Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания |
| Управление торговлей 11 | НСИ и администрирование → Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания |
Если пункт Обслуживание не виден, включите отображение всех функций в настройках интерфейса или войдите пользователем с полными правами.
Пошагово
- Откройте список
Регламентные и фоновые задания. - На закладке регламентных заданий найдите нужное по наименованию.
- Откройте карточку и снимите флажок
Включено. - Запишите и закройте.
Рядом в карточке настраивается расписание. Иногда выключать задание не нужно — достаточно перенести его с рабочего дня на ночь или раз в сутки вместо каждых пяти минут.
На закладке фоновых заданий видно, что выполняется прямо сейчас. Зависшее задание можно отменить из этого списка — это безопаснее, чем завершать рабочий процесс на сервере.
Отключение кодом
В доработанной конфигурации или во внешней обработке одно предопределённое задание выключают через встроенный язык:
Задание = РегламентныеЗадания.НайтиПредопределенное(Метаданные.РегламентныеЗадания.ИмяЗадания);
Если Задание <> Неопределено Тогда
Задание.Использование = Ложь;
Задание.Записать();
КонецЕсли;
Вместо ИмяЗадания подставьте имя из дерева метаданных. Код выполняется на сервере и требует административных прав.
Почему задания не отключаются: частые ошибки
Если зависшее задание не отменяется из программы, его сеанс можно завершить в консоли: Информационные базы → база → Сеансы, приложение Фоновое задание. Остальные пользователи при этом не пострадают. А вот перезапуск рабочего процесса или службы сервера 1С оборвёт сеансы всех пользователей этого кластера — делайте это только вне рабочего времени и после предупреждения коллег.
Что сломается после отключения фоновых заданий
Блокировка безвредна для тестовой копии. В рабочей базе последствия накапливаются тихо: ошибок на экране нет, просто данные перестают обновляться.
- 🔄 Обмены данными — не выгружаются и не загружаются документы между базами, с сайтом, с торговым оборудованием.
- 💱 Курсы валют и классификаторы — не загружаются, суммы в валюте пересчитаются по старому курсу.
- 📨 ЭДО и почта — не приходят входящие документы, не отправляются письма.
- 🔍 Полнотекстовый поиск — индекс не обновляется, новые документы не ищутся.
- 🧩 Отложенное обновление — после установки нового релиза типовой конфигурации часть данных обрабатывается в фоне. Пока задания заблокированы, обработка стоит, и программа будет показывать, что обновление не завершено.
- 💾 Резервные копии — если копирование настроено средствами самой программы, а не сервера СУБД, оно тоже перестанет выполняться.
В рабочей базе не оставляйте блокировку дольше, чем нужно для обслуживания. Запишите себе, когда и зачем её поставили, и снимите после работ.
Особенности для разных версий и окружений 1С 8.3
Общий флажок блокировки — свойство информационной базы в кластере. Он есть только в клиент-серверном варианте. В файловой базе консоли кластера нет: там задания отключают в карточке задания или в Конфигураторе.
Отличия между окружениями:
- 🪟 Сервер на Windows — доступны и графическая консоль, и
rac. Версия консоли должна совпадать с версией платформы сервера. - 🐧 Сервер на Linux — только
racчерезras, либо консоль на Windows-компьютере, подключённая к этому серверу по сети. - 🔢 Несколько версий платформы — у каждой версии свой экземпляр
racв папкеbin. Запускайте утилиту той же версии, что и сервер, иначе возможны ошибки подключения.
Можно ли через реестр Windows
В интернете встречается совет отключить фоновые задания через реестр. Такой настройки у 1С нет. В реестре хранится только описание службы агента сервера: путь к ragent.exe, порт, каталог кластера. Правка этих параметров не отключит задания, но может сломать запуск службы и остановить работу всех баз.
Если нужно остановить вообще всё, включая пользователей, правильный путь — остановить службу «Агент сервера 1С:Предприятия». Это обрывает все сеансы на сервере, поэтому делается только в окно обслуживания. Для отключения заданий хватает флажка в свойствах базы.