Почему регламентные задания 1С стоят и где снять запрет на их запуск
Содержание
В клиент-серверной 1С фоновые и регламентные задания включаются в консоли администрирования серверов: откройте свойства информационной базы и снимите флажок Блокировка регламентных заданий включена. В файловой базе отдельного выключателя нет: задания выполняются, только пока к базе подключён хотя бы один клиентский сеанс. В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) остаётся третье место — список Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания, где каждое задание включается отдельно.
Если задания «молчат» после переноса или копирования базы, почти всегда сработала защита от работы копии с внешними ресурсами. Её снимают одним ответом в диалоге о перемещении базы.
Фоновое и регламентное задание: в чём разница и кто их запускает
Эти два понятия часто путают, а включаются они в разных местах.
- 🔹 Фоновое задание — процедура, которую код конфигурации запускает «в фоне» методом
ФоновыеЗадания.Выполнить(). Например, формирование тяжёлого отчёта, чтобы форма не зависала. Пользователь его не планирует. - 🔹 Регламентное задание — процедура, которую платформа запускает сама по расписанию: загрузка курсов валют, обмен с банком, обновление индекса полнотекстового поиска , отправка ЭДО. Каждый запуск регламентного задания технически тоже выполняется как фоновое задание.
Где именно выполняется код:
| Вариант работы | Кто исполняет задания | Когда задания идут |
|---|---|---|
| Клиент-серверный | Рабочие процессы кластера (rphost) | Всегда, пока работает служба сервера 1С и блокировка снята |
| Файловый | Клиентское приложение, открытое пользователем | Только пока хотя бы один сеанс клиента открыт |
| Файловый через веб-публикацию | Процесс веб-сервера с модулем расширения 1С | Пока есть обращения к публикации |
Фоновые задания не занимают клиентскую лицензию: на сервере они работают внутри уже лицензированного кластера, в файле — внутри сеанса пользователя.
Главный вывод из таблицы: в файловой базе «включить задания на ночь» нельзя, если ночью никто не держит 1С открытой. Решение — отдельный сеанс-«исполнитель», о нём ниже.
Шаг 1. Как включить регламентные задания на сервере 1С через консоль кластера
Это основной выключатель для клиент-серверной базы. Если флажок блокировки стоит, никакие настройки внутри конфигурации не помогут: платформа просто не стартует ни одно регламентное задание.
- Запустите оснастку
Администрирование серверов 1С Предприятияна сервере или на компьютере администратора. - Раскройте
Central 1C:Enterprise 8.3 servers → <имя сервера> → Кластеры → <кластер> → Информационные базы. - Правой кнопкой по нужной базе →
Свойства. Если запросит — введите логин и пароль администратора этой информационной базы (пользователь 1С с правами администратора, не администратор кластера). - Снимите флажок
Блокировка регламентных заданий включена. - Нажмите
ОК. Перезапуск службы не нужен: изменение применяется сразу.
Рядом в тех же свойствах есть флажок Блокировка начала сеансов включена — это другая настройка. Она запрещает вход пользователям и никак не связана с заданиями. Не путайте их, когда проверяете базу после обновления.
Флажок блокировки заданий часто ставят намеренно — на тестовых копиях рабочей базы. Если такая копия начнёт выполнять задания, она отправит отчёты, загрузит выписки и выгрузит обмен от имени реальной организации. Перед снятием блокировки убедитесь, что это рабочая база, а не копия.
Если оснастка не открывается
Консоль администрирования — это оснастка MMC, которой нужна зарегистрированная библиотека radmin.dll той же версии, что и сервер. После обновления платформы оснастка часто перестаёт подключаться. Регистрация выполняется из командной строки от имени администратора:
cd "C:\Program Files\1cv8\8.3.24.1548\bin"
regsvr32 radmin.dll
Номер версии в пути подставьте свой: он должен совпадать с версией, на которой работает сервер. Если серверов несколько, а консоль одна — регистрируйте библиотеку от той версии, к кластеру которой подключаетесь.
Включение заданий без графической консоли: утилита 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=off
Первая команда даёт идентификатор кластера, вторая — идентификаторы баз. Третья снимает блокировку. Если у кластера задан администратор, добавьте --cluster-user и --cluster-pwd. Точный список параметров вашей версии смотрите в справке rac help infobase.
Через rac удобно проверить сразу все базы: команда rac infobase info по каждой базе показывает поле scheduled-jobs-deny. Так за минуту находятся копии, на которых блокировку забыли снять, и рабочие базы, на которых её забыли поставить.
Шаг 2. Файловая база: как заставить задания выполняться
В файловом варианте платформа выполняет регламентные задания внутри одного из открытых клиентских сеансов. Флажка в консоли нет, потому что нет кластера. Отсюда три практических следствия.
Задания идут, пока открыта 1С. Бухгалтер закрыл программу в 18:00 — ночная загрузка выписок не состоится. Пользователь утром откроет базу, и просроченные по расписанию задания стартуют в его сеансе, иногда заметно тормозя работу.
Выделенный сеанс-исполнитель. На компьютере, который не выключают (обычно это машина с файлом базы или терминальный сервер ), заведите отдельного пользователя 1С без интерактивных прав и держите под ним открытый клиент. Чтобы задания гарантированно шли именно в этом сеансе, его запускают с параметром командной строки:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Base\Buh" /N"Регламент" /P"пароль" /AllowExecuteScheduledJobs -Force
У остальных пользователей можно запретить выполнение заданий параметром /AllowExecuteScheduledJobs -Off в ярлыке или в строке Дополнительные параметры запуска списка баз. Тогда работа бухгалтеров не прерывается фоновой нагрузкой.
Конфигурации на БСП. В них есть ещё один слой: часть заданий в файловом режиме запускается через обработчик ожидания клиентского приложения. Если в списке регламентных заданий конфигурации задание включено, а журнал регистрации пуст — сначала проверьте, что сеанс вообще был открыт в нужное время.
Не держите исполнителя открытым во время обновления конфигурации и загрузки .dt: эти операции требуют монопольного доступа, и сеанс придётся закрыть. Заранее предупредите пользователя-исполнителя или завершите его сеанс сами, иначе обновление не начнётся.
Шаг 3. Включение отдельных регламентных заданий в типовой конфигурации
Когда платформенная блокировка снята, задания включаются поштучно. В конфигурациях на БСП путь одинаковый:
Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания
На вкладке регламентных заданий каждое задание имеет флажок Включено и своё расписание. Что проверить в карточке задания:
- ✅ Флажок
Включено. Выключенное задание видно в списке, но не стартует никогда. - ✅ Расписание. Откройте его ссылкой в карточке: проверьте дни недели, время начала и окончания, интервал повтора.
- ✅ Пользователь. В клиент-серверной базе задание выполняется от имени указанного пользователя. Если этот пользователь удалён или потерял права, задание будет падать с ошибкой доступа.
Кнопка Выполнить сейчас в той же форме запускает задание немедленно, вне расписания. Это лучший способ проверки: результат появляется на вкладке фоновых заданий через несколько секунд.
Защита от работы копии с внешними ресурсами
Если базу скопировали, перенесли на другой сервер или поменяли путь к ней, конфигурации на БСП блокируют задания, которые обращаются наружу: обмены, интернет-поддержку, отправку отчётности, загрузку курсов. При входе администратора появляется окно о перемещении информационной базы с двумя вариантами ответа.
| Ситуация | Что ответить | Результат |
|---|---|---|
| Базу перенесли на новый сервер, старая больше не используется | Вариант «база перемещена» | Задания с внешними ресурсами снова работают |
| Это тестовая или учебная копия | Вариант «это копия» | Внешние задания остаются заблокированными |
Не отвечайте «перемещена» на копии рабочей базы: две базы начнут параллельно выгружать обмены и отправлять отчёты от одной организации.
Шаг 4. Запуск внешней обработки по расписанию
Иногда нужно выполнять по расписанию свой код, не меняя конфигурацию. В типовых решениях для этого служат дополнительные обработки.
- Включите функциональность:
Администрирование → Печатные формы, отчеты и обработки, флажокДополнительные отчеты и обработки. - Откройте список дополнительных обработок по ссылке в том же разделе и добавьте файл
.epf. - Конфигурация прочитает из обработки её описание. Для запуска по расписанию обработка должна быть глобальной дополнительной обработкой и иметь команду с типом «вызов серверного метода».
- На вкладке команд в карточке обработки отметьте у команды использование расписания и задайте его.
- Сохраните карточку. Платформа создаст регламентное задание, и оно появится в общем списке.
Требование к самой обработке: в модуле объекта должна быть экспортная функция СведенияОВнешнейОбработке(), возвращающая описание с видом обработки и списком команд, и экспортная процедура ВыполнитьКоманду(). Обычная «самописная» обработка без этих методов регистрироваться не будет. Это работа программиста: пользователь только подключает готовый файл.
В клиент-серверной базе команда по расписанию выполняется на сервере 1С. Если обработка читает файлы, путь должен быть доступен учётной записи службы сервера 1С, а не пользователю: \\fileserver\exchange, а не C:\Users\Buh\Desktop.
Как найти причину, если задание не выполняется
Начинайте с журнала регистрации: Администрирование → Обслуживание → Журнал регистрации. В отборе по событиям выберите группу событий фонового задания — платформа пишет запуск, успешное завершение, ошибку выполнения и отмену. Сузьте отбор по периоду, когда задание должно было стартовать.
Что означает картина в журнале:
Если журнал регистрации настроен на запись только ошибок, записей о запуске не будет вовсе. Уровень журнала задаётся в Конфигураторе: Администрирование → Настройка журнала регистрации. Для диагностики временно поставьте запись всех событий, потом верните прежний уровень: полный журнал быстро растёт.
Принудительное завершение рабочего процесса rphost или перезапуск службы сервера 1С обрывает сеансы всех пользователей базы, а не только зависшее задание. Делайте это вечером или после предупреждения коллег.
Задания при работе через 1С:Линк и в облаке
Через сервис 1С:Линк база остаётся на вашем компьютере или сервере, сервис лишь даёт к ней защищённый доступ через интернет . Поэтому правила те же, что для локальной базы:
- 🖥️ файловая база за 1С:Линк — задания идут, только пока на компьютере с базой или у удалённого пользователя открыт клиентский сеанс. Компьютер с базой должен быть включён, иначе не работают ни пользователи, ни задания;
- 🖥️ клиент-серверная база за 1С:Линк — управляйте блокировкой через консоль кластера на своём сервере, как в шаге 1.
В облачных сервисах, где базу ведёт поставщик (1С:Фреш и аналогичные), консоли кластера у вас нет. Регламентные задания там запускает сам сервис. Пользователю доступны только поштучные настройки в форме регламентных заданий конфигурации, а часть заданий скрыта. Если задание не выполняется — проверьте его флажок и расписание, затем обращайтесь в поддержку провайдера.
Как настроить расписание, чтобы задания не тормозили базу
Включить все задания с интервалом «каждую минуту» — верный способ получить жалобы на медленную 1С. Несколько правил, которые снимают нагрузку.
Разведите тяжёлые задания по времени. Обновление индекса полнотекстового поиска, извлечение текста из файлов, пересчёт итогов и большие обмены ставьте на ночь и с интервалом 10–30 минут между стартами. Пример ночного окна:
| Задание | Время | Повтор |
|---|---|---|
| Обмен с филиалом | 01:00 | ежедневно |
| Обновление индекса полнотекстового поиска | 02:00 | ежедневно |
| Извлечение текста из файлов | 03:00 | ежедневно |
| Загрузка курсов валют | 07:30 | по рабочим дням |
Днём оставляйте только нужное в течение дня: обмен с банком, получение документов ЭДО, отправку почты. Для них разумный интервал — 15–60 минут, а не 1–5.
Выключайте неиспользуемое. Если организация не ведёт валютный учёт, загрузка курсов не нужна. Если ЭДО нет — задания обмена с оператором отключите.
Не запускайте задание повторно, пока не закончился прошлый запуск. Платформа не стартует второй экземпляр того же регламентного задания, пока выполняется первый. Но если задание длится 40 минут, а интервал 30, оно фактически работает без перерыва. Смотрите длительность в журнале и подбирайте интервал больше неё.
На сервере 1С задания выполняются рабочими процессами наравне с пользователями. Если в кластере работает несколько баз, тяжёлые ночные задания разных баз тоже разведите по часам — иначе в 02:00 сервер будет перегружен, хотя днём простаивает.