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