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