Почему внезапно остановился автообмен УНФ - БП по расписанию и как это исправить

Системный администратор 1С v8.3 (Управляемые формы) 1С:Управление нашей фирмой IT и автоматизация бизнеса
← На главную

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

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

Симптоматика проблемы: как локализовать сбой планировщика

Когда автоматический обмен по сценарию перестает работать, важно сразу отделить проблемы самой настройки синхронизации (ошибки правил конвертации, конфликты регистрации изменений) от глобального сбоя выполнения фоновых задач на сервере. Проанализируем ключевые признаки, указывающие на то, что проблема кроется в планировщике регламентных заданий:

  1. Успешный ручной обмен: При запуске синхронизации вручную из интерфейса программы (раздел «Администрирование» — «Синхронизация данных») процесс завершается успешно, документы и справочники переносятся без ошибок. Это говорит о том, что сами каналы связи, учетные записи и правила обмена исправны.
  2. Отсутствие записей в Журнале регистрации: При анализе Журнала регистрации (ЖР) за период сбоя полностью отсутствуют записи о запуске регламентного задания обмена. Система даже не пытается инициировать процедуру по расписанию.
  3. Остановка всех остальных регламентных заданий: Если открыть список всех регламентных заданий в базе данных, можно заметить, что перестали выполняться и другие системные задачи. Характерным примером является задание ОбновлениеИндексаППД (полнотекстового поиска), которое в штатном режиме запускается каждую минуту. Если его работа прекратилась ровно в то же время, что и обмен, мы имеем дело с глобальной блокировкой фоновых задач.
  4. Ошибка при попытке принудительного запуска: Если в форме «Регламентные и фоновые задания» попытаться выделить зависшее задание обмена и нажать кнопку «Выполнить сейчас», система выдаст системное предупреждение: «Выбранное регламентное задание нельзя выполнить вручную» или аналогичное сообщение об отказе запуска фонового процесса.

Если вы обнаружили эти признаки, то причина гарантированно заключается в установленной блокировке выполнения регламентных заданий на уровне кластера серверов «1С:Предприятие».

Главная причина: блокировка регламентных заданий на сервере 1С

Основным виновником остановки автообмена в описанной ситуации является включенный параметр «Блокировка регламентных заданий включена» в свойствах информационной базы на сервере 1С. Рассмотрим, как отключить этот параметр и вернуть систему к нормальной работе.

Пошаговая инструкция по снятию блокировки через консоль администрирования

Для отключения блокировки вам понадобятся права администратора кластера серверов 1С и доступ к утилите администрирования. Выполним следующие шаги:

  1. Запустите утилиту «Администрирование серверов 1С Предприятия» (Console Root -> Серверы 1С Предприятия -> [Имя вашего сервера] -> Информационные базы).
  2. Найдите в списке вашу базу данных (в данном случае базу 1С:УНФ, в которой перестал работать обмен по расписанию).
  3. Нажмите на имени информационной базы правой кнопкой мыши и выберите пункт «Свойства» (Properties).
  4. В открывшемся окне авторизации введите имя и пароль администратора информационной базы (если они заданы).
  5. Найдите параметр «Блокировка регламентных заданий включена» (Lock scheduled jobs enabled).
  6. Если напротив этого свойства стоит флаг (галочка), снимите его.
  7. Нажмите кнопку «Применить» (Apply), а затем «ОК» для сохранения настроек.

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

Для проверки работоспособности откройте Журнал регистрации в 1С:УНФ и убедитесь, что появились новые события с типом «Фоновое задание. Запуск» и «Фоновое задание. Успешное завершение».

Почему блокировка регламентных заданий включается «сама по себе»?

Часто системные администраторы и руководители утверждают, что никто из специалистов не заходил в консоль администрирования и вручную флаг блокировки не устанавливал. Рассмотрим подробнее, какие внутренние механизмы платформы и сопутствующие процессы могут активировать эту блокировку программно:

1. Защита от работы в копии базы (механизм БСП)

Современные конфигурации 1С, построенные на базе Библиотеки стандартных подсистем (БСП), обладают встроенной защитой от случайного запуска критически важных процессов (рассылка писем клиентам, автообмены, отправка SMS, интеграция с банками) в тестовых или скопированных базах.

Если базу данных перенесли на другой физический сервер, восстановили из резервной копии под другим именем или просто переименовали параметры подключения в кластере, при первом запуске под правами администратора система выдаст диалоговое окно с вопросом: «Информационная база была перемещена или восстановлена из резервной копии?» с кнопками выбора:

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

2. Аварийное завершение скриптов резервного копирования

На многих предприятиях настроено автоматическое ночное резервное копирование баз данных. Для безопасного проведения обслуживания баз без написания сложных сценариев часто используют автоматическое тихое архивирование и тестирование баз 1С по расписанию. Скрипты автоматизации (написанные на PowerShell, VBScript, или выполняемые через стороннее ПО, такое как Effector Saver) работают по следующему алгоритму:

  1. Программное подключение к кластеру серверов 1С через COM-соединение или утилиту rac.exe.
  2. Установка блокировки начала сеансов новых пользователей и установка блокировки регламентных заданий (чтобы фоновые процессы не мешали созданию бэкапа и не блокировали таблицы СУБД).
  3. Завершение активных сеансов пользователей.
  4. Создание резервной копии (выгрузка в .dt или создание бэкапа средствами MS SQL / PostgreSQL).
  5. Снятие блокировки сеансов и снятие блокировки регламентных заданий.

Если на четвертом шаге происходит сбой (например, зависла служба СУБД, переполнился жесткий диск, отключилось электропитание сервера), скрипт аварийно завершает свою работу. Последний шаг по снятию блокировок просто не успевает выполниться. В итоге база утром открывается пользователями (так как блокировка сеансов могла иметь ограниченное время действия), но регламентные задания остаются заблокированными навсегда до ручного вмешательства администратора.

Именно этим объясняется ситуация из сообщения №13 на форуме: регламентные задания (например, обновление индекса ППД) работали каждую минуту и прекратили работу ровно в 23:59. Это классическое время запуска ночных процедур обслуживания и резервного копирования.

Альтернативный метод: управление блокировкой через командную строку

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

Рассмотрим пример команды для снятия блокировки регламентных заданий. Для этого откроем консоль PowerShell или командную строку Windows и выполним команду обращения к утилите администрирования кластера:


# Шаг 1: Авторизуемся в кластере и находим ID информационной базы
& "C:\Program Files\1cv8\8.3.22.1709\bin\rac.exe" connection --host=localhost info

# Шаг 2: Снимаем блокировку регламентных заданий для конкретной базы
& "C:\Program Files\1cv8\8.3.22.1709\bin\rac.exe" infobase --host=localhost update --infobase="Имя_Базы_Данных" --infobase-user="Администратор" --infobase-pwd="Пароль" --scheduled-jobs-deny=off

Параметр --scheduled-jobs-deny=off как раз отвечает за отключение блокировки регламентных заданий. Использование этого метода в скриптах обслуживания позволяет минимизировать риски зависания блокировок при сбоях.

Что еще проверить, если регламентные задания не выполняются по расписанию

Если вы зашли в консоль администрирования и убедились, что флаг блокировки снят, но автоматический обмен по-прежнему не запускается, проанализируем другие возможные причины неисправности планировщика:

1. Нарушение очередности запуска служб сервера

При перезагрузке физического сервера служба «Агент сервера 1С:Предприятия» может запуститься быстрее, чем служба СУБД (Microsoft SQL Server или PostgreSQL). В момент старта сервер 1С пытается подключиться к базам данных для инициализации планировщика задач, но получает отказ от СУБД. В результате планировщик переходит в неактивное состояние.

Решение: Настройте отложенный запуск службы 1С (Delayed Start) в диспетчере служб Windows или выполните простой ручной перезапуск службы Агента 1С после полной загрузки сервера баз данных.

2. Проблемы с лицензированием фоновых заданий

Для запуска каждого фонового или регламентного задания сервер 1С создает отдельный рабочий сеанс, которому требуется свободная клиентская лицензия. Если на сервере установлен жесткий лимит лицензий и в пиковые часы все они заняты активными пользователями, планировщик не сможет запустить сеанс обмена. Задание будет бесконечно находиться в состоянии ожидания.

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

3. Переполнение кэша сервера или зависание рабочих процессов

В процессе длительной непрерывной работы процессы rphost могут накапливать ошибки в оперативной памяти, что приводит к некорректной работе планировщика задач. Также проблемы могут вызывать поврежденные файлы кэша конфигурации на сервере.

Решение: Произведите плановую очистку кэша сервера 1С. Для этого остановите службу сервера 1С, перейдите в каталог временных файлов службы (обычно это C:\Program Files\1cv8\srvinfo\reg_1541\) и удалите все папки с длинными буквенно-цифровыми именами (UID), содержащие кэш метаданных, после чего запустите службу заново.

Заключение

Внезапная остановка автоматической синхронизации между УНФ и БП в большинстве случаев не связана со сбоем самой настройки обмена. Первым делом всегда проверяйте активность глобального планировщика регламентных заданий на сервере 1С. Понимание механизмов защиты копий баз данных БСП и особенностей работы скриптов резервного копирования позволит вам оперативно локализовать проблему и минимизировать время простоя бизнес-процессов компании.

← На главную