Ошибка «Ошибка загрузки приоритетных данных из сообщения обмена» при создании РИБ в 1С: как исправить

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

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

Ошибка загрузки приоритетных данных из сообщения обмена. См. подробности в журнале регистрации.

При этом система не даёт зайти в пользовательский режим и предлагает только кнопки «Завершить» или «Перезапустить». Проанализируем причины этой проблемы и разберем по шагам варианты её решения.

Причины возникновения ошибки

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

Основные факторы, приводящие к сбою:

  1. Серверный контекст выполнения: Исполняемый код расположен в модуле ОбменДаннымиСервер. При клиент-серверном варианте работы поиск каталога обмена выполняется не на компьютере пользователя, а непосредственно на сервере 1С:Предприятия.
  2. Перенос недействительного пути: Подчиненный узел наследует настройки транспорта (путь к каталогу обмена) из главного узла или получает пустое значение/заглушку вида "Каталог". На новом сервере этого пути физически не существует.
  3. Ошибка конструктора ДвоичныеДанные: При попытке прочитать файл обмена из несуществующей папки система вызывает исключение в строке НовоеСообщение = Новый ДвоичныеДанные(СообщениеОбмена); с текстом «Каталог не обнаружен».
  4. Недостаток прав доступа: Учетная запись, от имени которой запущен сервис 1С:Предприятия (например, USR1CV8), не имеет прав на чтение и запись в указанную сетевую или локальную папку.

Способ 1. Настройка каталога обмена в главном узле перед выгрузкой

Самый простой и правильный способ предотвратить ошибку — правильно подготовить главный узел перед созданием начального образа.

  1. В главном узле перейдем в раздел Администрирование — Синхронизация данных.
  2. Зайдем в настройки нужного узла РИБ и откроем параметры транспорта сообщений обмена.
  3. Укажем путь к каталогу обмена, который будет гарантированно доступен подчиненному узлу (например, сетевой ресурс формата \\Server\Exchange).
  4. Нажмем кнопку проверки доступности каталога, чтобы убедиться в наличии прав на запись и чтение.
  5. Только после этого сформируем начальный образ подчиненного узла.

Способ 2. Обход автозапуска через параметр `/C ЗапуститьБезСинхронизации`

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

  1. Откроем стартовое окно 1С:Предприятия и выделим созданный подчиненный узел.
  2. Нажмем кнопку Изменить и перейдем на последнюю страницу настроек (где указываются дополнительные параметры запуска).
  3. В поле Дополнительные параметры запуска введем следующую строку:

    /C ЗапуститьБезСинхронизации

  4. Нажмем Готово и запустим информационную базу.
  5. Система успешно запустится в режиме «1С:Предприятие», пропустив автозагрузку приоритетных данных.
  6. Перейдем в настройки синхронизации данных и укажем корректный действующий каталог обмена.
  7. Завершим работу 1С и удалим параметр /C ЗапуститьБезСинхронизации из настроек запуска.

Способ 3. Временная отвязка базы от главного узла

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

Для снятия признака подчиненного узла выполним код на сервере:

ПланыОбмена.УстановитьГлавныйУзел(Неопределено);

После выполнения этой команды база перестает считать себя подчиненным узлом РИБ и открывается без попыток выполнить автоматический обмен данными. После входа в программу и исправления путей в настройках синхронизации связь с главным узлом восстанавливается следующим кодом:


СсылкаНаГлавныйУзел = ПланыОбмена.ГлавныйУзелНастройки(); // Или ссылка на соответствующий элемент плана обмена
ПланыОбмена.УстановитьГлавныйУзел(СсылкаНаГлавныйУзел);

Способ 4. Создание структуры папок на сервере 1С

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

  1. Откроем Журнал регистрации в созданной базе (или через Конфигуратор).
  2. Найдем запись с ошибкой от объекта ОбщиеМодули.ОбменДаннымиСервер. В описании ошибки будет указан конкретный каталог и имя файла обмена (например, Message_БП_ПФ.xml).
  3. Создадим на сервере папку с абсолютно аналогичным путем.
  4. Убедимся, что служба сервера 1С:Предприятия имеет полные права (чтение, запись, изменение) на созданный каталог.
  5. Поместим в этот каталог файл обмена из главного узла или повторим попытку запуска.

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

← На главную