При разворачивании подчиненного узла распределенной информационной базы (РИБ) в типовых конфигурациях 1С (например, «1С:Бухгалтерия 3.0» на базе Библиотеки Стандартных Подсистем) пользователи часто сталкиваются с ошибкой при первом запуске начального образа:
Ошибка загрузки приоритетных данных из сообщения обмена. См. подробности в журнале регистрации.
При этом система не даёт зайти в пользовательский режим и предлагает только кнопки «Завершить» или «Перезапустить». Проанализируем причины этой проблемы и разберем по шагам варианты её решения.
Выясним причину такого поведения платформы. В конфигурациях, использующих Библиотеку Стандартных Подсистем (БСП), процедура первого запуска подчиненного узла устроена так, что система пытается автоматически выполнить загрузку первичных/приоритетных данных из файла обмена еще до открытия главного окна программы и работы пользователя.
Основные факторы, приводящие к сбою:
ОбменДаннымиСервер. При клиент-серверном варианте работы поиск каталога обмена выполняется не на компьютере пользователя, а непосредственно на сервере 1С:Предприятия."Каталог". На новом сервере этого пути физически не существует.ДвоичныеДанные: При попытке прочитать файл обмена из несуществующей папки система вызывает исключение в строке НовоеСообщение = Новый ДвоичныеДанные(СообщениеОбмена); с текстом «Каталог не обнаружен».USR1CV8), не имеет прав на чтение и запись в указанную сетевую или локальную папку.Самый простой и правильный способ предотвратить ошибку — правильно подготовить главный узел перед созданием начального образа.
\\Server\Exchange).Если начальный образ уже выгружен и создана новая информационная база, но зайти в нее не удается из-за ошибки, заменим автоматический запуск синхронизации на обычную загрузку программы.
/C ЗапуститьБезСинхронизации
/C ЗапуститьБезСинхронизации из настроек запуска.Рассмотрим случай, когда необходимо зайти в базу, не меняя параметры запуска, или исправить проблему программно через внешнюю обработку или групповую обработку данных.
Для снятия признака подчиненного узла выполним код на сервере:
ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
После выполнения этой команды база перестает считать себя подчиненным узлом РИБ и открывается без попыток выполнить автоматический обмен данными. После входа в программу и исправления путей в настройках синхронизации связь с главным узлом восстанавливается следующим кодом:
СсылкаНаГлавныйУзел = ПланыОбмена.ГлавныйУзелНастройки(); // Или ссылка на соответствующий элемент плана обмена
ПланыОбмена.УстановитьГлавныйУзел(СсылкаНаГлавныйУзел);
Если изучить журнал регистрации и выяснить точный путь к файлу, который пытается найти система, можно решить проблему на уровне операционной системы:
ОбщиеМодули.ОбменДаннымиСервер. В описании ошибки будет указан конкретный каталог и имя файла обмена (например, Message_БП_ПФ.xml).Применение любого из перечисленных способов позволяет успешно завершить создание распределенной информационной базы и настроить регулярный обмен данными.