Администрирование · 10 мин
Фоновые задания в 1С 8.3: как отключить и управлять ими
Как отключить фоновые задания в 1С 8.3: консоль заданий, регламентные операции, блокировка на сервере, типовые ошибки и проверка результата.
Фоновые задания в 1С 8.3 — это сеансы, которые выполняют код без участия пользователя: обмен данными, расчёт итогов, загрузка курсов валют, отправка отчётов. Когда таких заданий много или они зависают, база начинает тормозить, журнал растёт, а пользователи жалуются на блокировки. Отключить лишние фоновые задания — стандартная задача администратора, и делается это несколькими способами в зависимости от того, что именно нужно остановить: разовое выполнение, расписание или запуск механизма целиком.
Важно различать два понятия. Регламентное задание — это настройка в конфигурации: что запускать и по какому расписанию. Фоновое задание — это конкретный запущенный экземпляр, сеанс на сервере или в файловой базе. Отключить можно и то, и другое: снять флаг «Использование» у регламентного задания, чтобы оно больше не запускалось, или принудительно завершить уже работающий фоновый сеанс.
Ниже разобраны рабочие способы для клиент-серверного и файлового вариантов, программные методы, типичные ошибки и способы проверить, что задания действительно остановлены.
Где посмотреть список фоновых заданий
Прежде чем отключать, нужно понять, что вообще выполняется. В типовых конфигурациях (БП, УТ, ERP, ЗУП) список открывается через раздел «Администрирование» → «Обслуживание» → «Регламентные операции» или «Регламентные и фоновые задания». Там видно состояние каждого задания: выполняется, завершено, ошибка, а также дата последнего запуска и текст ошибки.
Для любой конфигурации, включая самописные, подходит внешняя обработка «Консоль заданий» с диска ИТС или из состава БСП. Она показывает и регламентные задания с расписаниями, и активные фоновые задания с возможностью отмены. Это основной рабочий инструмент администратора.
В клиент-серверном варианте картину дополняет консоль кластера: ветка «Сеансы» показывает фоновые сеансы с типом «Фоновое задание», а ветка «Рабочие процессы» — нагрузку, которую они создают.
Расписание регламентных заданий и время их выполнения
Текст ошибки в журнале регистрации
Совпадение времени запуска и жалоб пользователей
Отключение через консоль заданий
Самый контролируемый способ — отключить конкретное регламентное задание, не трогая остальные. Откройте консоль заданий, найдите нужное задание в списке и снимите флаг «Использование». С этого момента планировщик перестанет создавать фоновые задания по этому расписанию, но уже запущенный экземпляр продолжит работу — его нужно отменить отдельно.
Для отмены активного фонового задания выделите его на вкладке фоновых заданий и нажмите «Отменить». Платформа пошлёт сигнал завершения; если код задания обрабатывает отмену корректно, сеанс завершится в течение нескольких секунд. Если задание «висит» в ожидании блокировки, отмена может не сработать — тогда сеанс завершают через консоль кластера.
- 1Откройте «Администрирование» → «Регламентные и фоновые задания» или внешнюю консоль заданий
- 2Найдите нужное регламентное задание и снимите флаг «Использование»
- 3На вкладке фоновых заданий отмените активный экземпляр, если он выполняется
- 4Через 5–10 минут убедитесь, что новые запуски не появляются
- 5Проверьте журнал регистрации на отсутствие ошибок от зависимых механизмов
Блокировка регламентных заданий на сервере 1С
Когда нужно остановить все фоновые задания разом — например, на время обновления, восстановления из копии или разбора зависшей базы — используют блокировку на уровне информационной базы. В консоли кластера откройте свойства базы и установите флаг «Блокировка регламентных заданий включена». После этого кластер перестаёт запускать новые фоновые задания для этой базы.
Тот же параметр доступен при создании или восстановлении базы через конфигуратор — в окне параметров информационной базы есть соответствующий флажок. Это удобно при развёртывании копии для тестов: копия не будет выполнять обмены, рассылки и синхронизации, которые продолжает делать рабочая база.
Отключение в файловом варианте
В файловой базе фоновые задания выполняются внутри клиентских сеансов: планировщик срабатывает у того пользователя, у которого открыт сеанс. Поэтому отключение сводится к тем же действиям — снять «Использование» у регламентных заданий через консоль заданий. Глобальной блокировки, как в кластере, здесь нет.
Если задания в файловой базе вообще не должны работать (типичный случай — архивная копия, которую открывают только для просмотра), надёжнее всего отключить использование у всех регламентных заданий сразу. Это можно сделать программно, перебрав метаданные.
Учтите особенность: в файловом варианте зависшее фоновое задание завершается вместе с сеансом пользователя, который его выполняет. Иногда проще попросить пользователя перезапустить программу, чем искать способ отменить задание изнутри.
Программное отключение и управление
Для массовых операций и автоматизации используют встроенный язык. Менеджер регламентных заданий позволяет найти задание и снять использование, а менеджер фоновых заданий — отменить активный экземпляр.
// Отключить регламентное задание
Задание = РегламентныеЗадания.НайтиПредопределенное("СинхронизацияДанных");
Задание.Использование = Ложь;
Задание.Записать();
// Отменить все активные фоновые задания по этому регламентному
Отбор = Новый Структура("РегламентноеЗадание", Задание);
Для Каждого Фоновое Из ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор) Цикл
Фоновое.Отменить();
КонецЦикла;Программный способ удобен в обработках первоначального заполнения тестовых копий: один вызов процедуры отключает все задания разом. Для этого перебирают РегламентныеЗадания.ПолучитьРегламентныеЗадания() и каждому устанавливают Использование = Ложь.
Частые ошибки и как их избежать
Самая распространённая ошибка — отключить задание, но не отменить уже запущенный экземпляр. Пользователь видит снятый флаг и считает проблему решённой, а зависший сеанс продолжает держать блокировки ещё несколько часов. Всегда проверяйте вкладку активных фоновых заданий после изменения настроек.
Вторая ошибка — отключать задания «подряд», не разбираясь в зависимостях. Например, отключение загрузки курсов валют сломает пересчёт валютных сумм в документах, а остановка расчёта итогов приведёт к медленным отчётам. Перед отключением выясните, какие механизмы конфигурации опираются на это задание.
Проверка результата
После отключения убедитесь, что эффект достигнут. В консоли заданий у регламентного задания должно стоять состояние «Отключено» или снятый флаг использования, новых фоновых заданий по расписанию появляться не должно. В консоли кластера в списке сеансов не должно быть фоновых сеансов по отключённым заданиям.
Дополнительно проверьте журнал регистрации: отфильтруйте события по имени задания за последние часы. Отсутствие новых записей о запуске подтверждает, что планировщик его больше не вызывает. Если задание продолжает стартовать — проверьте, не включена ли оно в другом узле распределённой базы или не переопределено ли расписание в данных вместо метаданных.
Как проверить результат
Снят, изменения сохранены
Флаг вернулся после обновления или записи другим пользователем
Нет выполняющихся экземпляров отключённого задания
Задание висит в состоянии «Выполняется»
Нет новых событий запуска задания
Записи о запуске появляются по расписанию
FAQ
Как отключить все фоновые задания сразу в рабочей базе?
В клиент-серверном варианте установите «Блокировка регламентных заданий» в свойствах базы в консоли кластера. В файловом варианте такой настройки нет — отключайте задания по одному или программно, перебрав все регламентные задания и сняв флаг использования.
Фоновое задание зависло и не отменяется. Что делать?
Сначала попробуйте «Отменить» в консоли заданий. Если не помогло, в консоли кластера найдите сеанс с типом «Фоновое задание» и завершите его принудительно. В файловой базе завершите сеанс пользователя, в котором выполняется задание.
Отключённое задание снова стало активным после обновления. Почему?
Некоторые механизмы типовых конфигураций при обновлении или включении функциональных опций заново активируют предопределённые регламентные задания. После каждого обновления проверяйте состояние критичных заданий и при необходимости отключайте повторно.
Можно ли отключить задание только на время, не меняя расписание?
Да. Снятие флага «Использование» не удаляет расписание — оно сохраняется. Когда задание снова понадобится, достаточно вернуть флаг, и запуски возобновятся по прежнему графику.
Как узнать, какое задание грузит сервер?
В консоли кластера откройте список сеансов и отсортируйте по количеству вызовов СУБД или объёму прочитанных данных. Сопоставьте сеанс с фоновым заданием по времени начала, затем посмотрите его имя в консоли заданий и историю ошибок в журнале регистрации.
Опасно ли отключать фоновые задания в копии базы?
Наоборот, это обязательная мера. Тестовая копия с активными заданиями может выполнять реальные обмены, рассылки писем клиентам и синхронизации с внешними системами. Сразу после восстановления копии включите блокировку регламентных заданий или отключите их все.
Что важно запомнить
Отключение фоновых заданий делается двумя действиями: снятием флага «Использование» у регламентного задания и отменой уже запущенных экземпляров. Для полной остановки в клиент-серверной базе используйте блокировку регламентных заданий в консоли кластера, в тестовых копиях отключайте задания всегда, а результат проверяйте по списку активных сеансов и журналу регистрации.