К статье
Практический материал

Администрирование · 11 мин

Как снять регламентное задание в 1С

Как отключить регламентное задание в 1С через консоль заданий и конфигуратор, снять блокировку, проверить результат и избежать типичных ошибок.

Регламентные задания в 1С выполняют фоновые операции: обмен данными, расчёт итогов, рассылку отчётов, обновление курсов валют. Иногда задание нужно снять — например, оно зависло, грузит сервер, дублирует данные или мешает обновлению конфигурации. Под «снятием» обычно понимают одно из трёх действий: отключение задания по расписанию, принудительное завершение выполняющегося фонового процесса или снятие блокировки регламентных заданий на информационной базе.

Порядок действий зависит от режима работы базы. В файловой базе фоновые задания выполняются в отдельном процессе на компьютере пользователя, в клиент-серверном варианте — рабочими процессами сервера 1С:Предприятия. Поэтому инструменты различаются: где-то достаточно типовой консоли заданий, где-то нужна консоль кластера серверов.

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

Разберитесь, что именно нужно снять

Термин «снять задание» скрывает три разные задачи, и путать их — частая причина проблем. Первая задача — отключить задание, чтобы оно больше не запускалось по расписанию. Это делается снятием флажка «Использование» в свойствах задания, при этом само задание и его настройки сохраняются.

Вторая задача — прервать задание, которое выполняется прямо сейчас: зависло, работает часами или потребляет ресурсы сервера. Здесь нужна отмена фонового задания, а не изменение расписания. Третья задача — снять блокировку регламентных заданий, которая устанавливается при обновлении конфигурации, восстановлении из копии или переносе базы и полностью останавливает все фоновые процессы.

Задание запускается по расписанию, но не нужноТребуется отключение

Снимите флажок «Использование» в свойствах задания

Задание висит в состоянии «Выполняется»Требуется принудительная отмена

Найдите его в списке фоновых заданий и отмените

Ни одно задание не запускается вообщеВероятна блокировка на уровне базы

Проверьте параметры информационной базы в консоли кластера

Задание завершается с ошибкой сразуПроблема в коде или правах

Смотрите журнал регистрации, а не расписание

Отключите задание через консоль регламентных заданий

В типовых конфигурациях на Библиотеке стандартных подсистем (Управление торговлей, ERP, Бухгалтерия, ЗУП) консоль заданий находится по пути «Администрирование» → «Обслуживание» → «Регламентные и фоновые задания» (в некоторых конфигурациях — «Регламентные операции»). Откроется список всех регламентных заданий с их состоянием, расписанием и датой последнего выполнения.

Найдите нужное задание и откройте его двойным щелчком. Снимите флажок «Использование» и нажмите «Записать и закрыть». С этого момента задание не будет запускаться по расписанию, но останется в списке, и его можно включить обратно в любой момент. Удалять задание целиком не рекомендуется: предопределённые задания типовой конфигурации всё равно пересоздадутся при обновлении.

Если консоли в интерфейсе нет (нетиповая или старая конфигурация), используйте внешнюю обработку «Консоль заданий» с диска ИТС или стандартную функцию «Все функции» → «Регламентные задания», если она доступна в режиме толстого клиента.

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

Прервите выполняющееся фоновое задание

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

Важно понимать: отмена — это не мгновенное «убийство» процесса. Платформа посылает заданию сигнал прерывания, и код должен до него «дойти». Если процедура выполняет один длинный запрос к СУБД, отмена сработает только после завершения запроса. В клиент-серверном варианте, когда задание не реагирует вообще, процесс можно завершить жёстко — через консоль кластера серверов: найдите сеанс фонового задания в списке сеансов и удалите его.

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

Снимите блокировку регламентных заданий на базе

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

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

В файловом варианте блокировка снимается из режима Предприятия: в типовых конфигурациях при входе с правами администратора появляется вопрос о разблокировке заданий, либо используйте обработку «Снятие блокировки регламентных заданий». Также параметр можно изменить программно методом УстановитьБлокировкуРегламентныхЗаданий(Ложь) через внешнюю обработку.

Отключите задания в файловой базе и через код

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

bsl
// Отключить конкретное задание
Задание = РегламентныеЗадания.НайтиПредопределенное("СинхронизацияДанных");
Задание.Использование = Ложь;
Задание.Записать();

// Отменить все активные фоновые задания этого регламентного
Отбор = Новый Структура("РегламентноеЗадание", Задание);
Для Каждого Фоновое Из ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор) Цикл
    Фоновое.Отменить();
КонецЦикла;

Для запуска фоновых заданий в файловой базе отдельным процессом применяется параметр командной строки ExecuteScheduledJobs или отдельный сеанс-планировщик. Если задания в файловой базе «не работают», часто дело именно в том, что никто не запускает механизм выполнения — это не блокировка, а отсутствие процесса-исполнителя.

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

Проверьте результат и типичные ошибки

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

Контрольные точки

Как проверить результат

Состояние задания в консоли
Норма

Флажок «Использование» снят, ближайший запуск не показывается

Тревожный признак

Задание снова активно — возможно, его включает другой механизм или настройка

Список фоновых заданий
Норма

Нет активных процессов отменённого задания

Тревожный признак

Задание перезапустилось сразу после отмены

Журнал регистрации
Норма

Нет новых запусков отключённого задания

Тревожный признак

Ошибки запуска продолжают появляться

Нагрузка на сервер
Норма

Потребление CPU и памяти рабочими процессами снизилось

Тревожный признак

Зависший rphost остался — требуется перезапуск рабочего процесса

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

Типичные ошибки
01
Удаление предопределённого задания вместо отключения — при обновлении конфигурации оно создастся заново и снова заработает
02
Отмена задания без отключения расписания — задание перезапустится по настройке повторения при аварийном завершении
03
Снятие блокировки на тестовой копии базы до отключения обменов — копия начнёт слать реальные письма и запросы во внешние системы
04
Ожидание мгновенной отмены — прерывание срабатывает только после завершения текущего запроса к СУБД

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

Как снять задание, если консоли заданий нет в интерфейсе?

Используйте внешнюю обработку «Консоль заданий» с диска ИТС или управляйте заданиями программно через методы РегламентныеЗадания.НайтиПоУникальномуИдентификатору и свойство Использование. В толстом клиенте также доступно меню «Все функции» → «Стандартные» → «Регламентные задания».

Задание отменил, а процесс на сервере остался. Что делать?

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

Почему отключённое задание снова работает после обновления?

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

Можно ли отключить все задания разом?

Да — включите блокировку регламентных заданий в свойствах информационной базы в консоли кластера (для клиент-серверного варианта). Это остановит все запуски без изменения расписаний, и позже всё вернётся одним действием.

Опасно ли прерывать регламентное задание?

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

Итог

Что важно запомнить

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