Администрирование · 11 мин
Как запустить регламентное задание в 1С 8
Как запустить регламентное задание в 1С 8 вручную и по расписанию: настройка в конфигураторе, консоль заданий, типовые ошибки и способы проверки выполнения.
Регламентные задания в 1С 8 — это механизм автоматического выполнения прикладных процедур по расписанию: обмен данными, расчёт итогов, загрузка курсов валют, рассылка отчётов. По умолчанию задание срабатывает само в заданное время, но на практике часто требуется запустить его вручную — для проверки после настройки, при отладке или когда штатный запуск не сработал.
Способ запуска зависит от того, где работает информационная база. В файловом варианте задания выполняются либо отдельным фоновым сеансом, либо в момент обращения пользователя, в клиент-серверном — их обрабатывает сервер 1С:Предприятия. От этого зависит и то, почему задание «не запускается»: причины в двух режимах разные.
Ниже разобраны все рабочие способы принудительного запуска: через консоль регламентных заданий в типовых конфигурациях, через конфигуратор, программно из встроенного языка и через внешние обработки. Отдельно описаны проверка результата по журналу регистрации и типичные ошибки, из-за которых задание формально выполняется, но не даёт эффекта.
Где находятся регламентные задания и что нужно проверить перед запуском
Перед принудительным запуском убедитесь, что задание вообще способно выполниться. Откройте свойства задания в конфигураторе (ветка «Общие → Регламентные задания») или в пользовательском режиме и проверьте три вещи: задание не помечено как «Не используется», расписание задано (для ручного запуска оно не обязательно, но его отсутствие часто сопровождает отключенное задание), и у вашей учётной записи есть права на выполнение соответствующей процедуры.
В клиент-серверном варианте дополнительно проверьте, что в свойствах информационной базы на сервере не установлена блокировка регламентных заданий. Этот флаг включают при копировании рабочей базы в тестовую — и именно он чаще всего объясняет ситуацию «задание есть, но ничего не происходит».
Снят ли флажок «Не используется» в свойствах задания
Свойства ИБ в консоли кластера: «Блокировка регламентных заданий включена»
В файловом режиме задания выполняет отдельный процесс или сеанс пользователя
Роль пользователя должна допускать вызов процедуры задания
Как запустить задание из пользовательского режима типовой конфигурации
В конфигурациях на базе Библиотеки стандартных подсистем (УТ 11, ERP, БП 3.0, ЗУП 3.1 и других) есть встроенный список регламентных и фоновых заданий. Путь: «Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания». В некоторых конфигурациях раздел называется «Поддержка и обслуживание».
В открывшемся списке найдите нужное задание, выделите его и нажмите кнопку «Выполнить сейчас» (в ряде версий — «Выполнить» в меню «Ещё»). Платформа поставит фоновое задание в очередь немедленно, не дожидаясь расписания. Колонка «Состояние» покажет ход выполнения: «Выполняется», затем «Завершено» или «Ошибка».
Если команда «Выполнить сейчас» недоступна (кнопка неактивна), значит задание отключено или у вас недостаточно прав. Включите задание двойным щелчком по строке и снятием флажка «Не используется», либо обратитесь к администратору за правами.
- 1Откройте «Администрирование → Обслуживание → Регламентные и фоновые задания»
- 2Найдите нужное задание по имени или методу
- 3Выделите строку и нажмите «Выполнить сейчас»
- 4Дождитесь смены состояния на «Завершено»
- 5Проверьте результат в журнале регистрации и в прикладных данных
Запуск через конфигуратор и консоль заданий
Сам конфигуратор не имеет кнопки «выполнить задание» — он служит для редактирования расписания и свойств. Однако из конфигуратора удобно открыть обработку «Консоль заданий» (входит в состав инструментов разработчика и на диск ИТС), запустив её через «Файл → Открыть». Консоль показывает все регламентные и фоновые задания базы и позволяет выполнить любое из них одной кнопкой, а также посмотреть последнюю ошибку.
Консоль заданий особенно полезна в нетиповых и самописных конфигурациях, где нет стандартного раздела «Регламентные и фоновые задания». Она работает и в файловом, и в клиент-серверном режиме, требуя лишь права на запуск внешних обработок.
Программный запуск через встроенный язык
Когда нужно запустить задание из кода — например, из внешней обработки или по кнопке в форме, — используются два подхода. Первый: найти задание по имени метода и принудительно создать фоновое задание на его основе. Второй: напрямую вызвать процедуру общего модуля, которую выполняет задание.
Первый вариант корректнее: задание выполнится в фоновом сеансе с теми же правами и контекстом, что и при штатном запуске. Второй вариант проще, но код выполнится в текущем сеансе пользователя — интерфейс «подвиснет» на время выполнения, а права будут пользовательские, а не служебные.
МассивЗаданий = РегламентныеЗадания.ПолучитьРегламентныеЗадания(Новый Структура("ИмяМетода", "ОбменДаннымиССайтом"));
Если МассивЗаданий.Количество() > 0 Тогда
ФоновыеЗадания.Выполнить(МассивЗаданий[0].ИмяМетода,, МассивЗаданий[0].Ключ, МассивЗаданий[0].Наименование);
КонецЕсли;Обратите внимание: метод ФоновыеЗадания.Выполнить ставит задание в очередь асинхронно. Управление вернётся сразу, поэтому для проверки результата нужно смотреть журнал регистрации или список фоновых заданий, а не ожидать завершения в том же коде.
Настройка расписания для автоматического запуска
Если цель — не разовый запуск, а регулярное выполнение, расписание настраивается в свойствах задания. В конфигураторе: правый клик по заданию → «Свойства» → «Расписание». В пользовательском режиме типовых конфигураций расписание меняется прямо из списка заданий по ссылке в колонке «Расписание».
Диалог расписания позволяет задать периодичность: ежедневно в заданное время, каждые N минут в течение дня, по дням недели, по датам месяца. Для частых запусков учитывайте нагрузку: задание, выполняющееся каждую минуту и длящееся дольше минуты, будет накапливать очередь или блокироваться, в зависимости от настроек.
Особенности файлового и клиент-серверного режимов
В клиент-серверном варианте очередь регламентных заданий обслуживает сервер 1С:Предприятия — задания выполняются независимо от того, работает ли кто-то в базе. Ручной запуск из списка заданий или консоли срабатывает сразу, если не включена блокировка заданий в свойствах базы.
В файловом варианте всё иначе. Начиная с платформы 8.3, задания может обслуживать отдельный фоновый процесс, но классическая схема — запуск специального сеанса командой 1cv8.exe ENTERPRISE /F"путь" /ExecuteScheduledJobs или выполнение заданий в момент обращения пользователей. Если никто не работает в базе и фоновый процесс не запущен — задания стоят в очереди.
Способы запуска задания
Самый простой и безопасный способ; доступен только в конфигурациях на БСП и при наличии прав
Подходит для любых конфигураций, показывает ошибки; требует права на внешние обработки
Для автоматизации и кнопок в интерфейсе; требует аккуратности с правами и именем метода
Быстро для отладки, но выполняется в сеансе пользователя и блокирует интерфейс
Как проверить, что задание выполнилось успешно
Формальное завершение без ошибки не всегда означает прикладной результат. Проверяйте в два этапа. Сначала — техническое состояние: в списке заданий колонка «Состояние» должна показать «Завершено», а не «Ошибка»; в журнале регистрации (Администрирование → Обслуживание → Журнал регистрации, отбор по событию фонового задания) не должно быть записей уровня «Ошибка» за время выполнения.
Затем — прикладной результат: если задание загружает курсы валют, откройте регистр курсов и проверьте свежую запись; если это обмен — проверьте, что документы появились в приёмнике; если рассылка отчётов — что письма ушли адресатам. Только совпадение обоих признаков подтверждает успешный запуск.
Как проверить результат
«Завершено», указано время последнего выполнения
«Ошибка» или состояние не меняется
События начала и завершения без уровня «Ошибка»
Записи «Ошибка» с текстом исключения
Появились ожидаемые записи, документы, письма
Данные не изменились, хотя задание «завершено»
Сопоставима с обычным временем работы задания
Завершилось мгновенно — возможно, процедура ничего не сделала
Типичные ошибки и их устранение
Самая частая жалоба — «нажал выполнить, ничего не произошло». Обычно за этим стоит одна из четырёх причин: задание отключено флажком «Не используется», в клиент-серверной базе включена блокировка регламентных заданий, в файловой базе нет процесса, обслуживающего очередь, или процедура падает с ошибкой, которую видно только в журнале регистрации.
Вторая группа проблем — ошибки внутри самой процедуры: нарушение прав доступа, попытка вызвать клиентский код (например, Предупреждение или Вопрос) из фонового сеанса, обращение к недоступному внешнему ресурсу. Фоновое задание выполняется на сервере без интерфейса — любой интерактивный вызов в коде гарантированно приводит к ошибке.
Частые вопросы
Как запустить регламентное задание, если кнопки «Выполнить сейчас» нет?
Кнопка отсутствует в конфигурациях без Библиотеки стандартных подсистем или при нехватке прав. Используйте внешнюю обработку «Консоль заданий» либо программный вызов через ФоновыеЗадания.Выполнить с указанием имени метода задания.
Почему задание выполняется вручную, но не срабатывает по расписанию?
Проверьте само расписание (возможно, заданы неверные дни или время), флаг «Использование», а в файловой базе — наличие процесса, обслуживающего очередь заданий. В клиент-серверном варианте проверьте блокировку заданий в свойствах ИБ.
Можно ли запустить регламентное задание из командной строки?
Напрямую — нет, но можно запустить 1С с параметром /Execute и указать внешнюю обработку, которая выполнит нужный метод, либо использовать /ExecuteScheduledJobs для запуска сеанса обслуживания очереди заданий в файловой базе.
Где посмотреть текст ошибки, с которой завершилось задание?
В журнале регистрации: установите отбор по событию фонового задания и уровню «Ошибка». Также текст ошибки виден в консоли заданий в свойствах фонового задания и в колонке «Сообщение об ошибке» списка заданий в типовых конфигурациях.
Опасно ли запускать регламентное задание вручную?
Для большинства заданий (загрузка курсов, отправка отчётов) ручной запуск безопасен — он эквивалентен штатному. Осторожность нужна с заданиями обмена, удаления данных и пересчёта итогов: их лучше сначала проверить на копии базы и не запускать в часы пиковой нагрузки.
Что важно запомнить
Ручной запуск регламентного задания выполняется через список «Регламентные и фоновые задания» в типовых конфигурациях, через консоль заданий или программно. Перед запуском проверьте, что задание включено и не заблокировано на сервере; после — подтвердите результат по журналу регистрации и прикладным данным. Тяжёлые задания сначала отлаживайте на копии базы.