При настройке или регулярном выполнении синхронизации данных между конфигурациями 1С:Управление торговлей 11 и 1С:Бухгалтерия предприятия 3.0 через универсальный формат EnterpriseData пользователи и специалисты нередко сталкиваются с аварийным завершением сеанса обмена. В журнале регистрации или в окне сообщений появляется ошибка следующего вида: {ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль}: Не определен Менеджер конвертации для версии формата обмена, причем сразу после слова «обмена» ставится точка и отсутствует само наименование версии формата.
Проанализируем природу возникновения этой неисправности, разберем причины сбоя подсистемы БСП и рассмотрим проверенные пошаговые сценарии ее устранения.
Причины сбоя и механизм возникновения ошибки
Для понимания сути проблемы выясним причину ее появления на уровне программного кода подсистемы обмена данными:
Пустое значение версии формата: Ошибка возникает в методе ВыполнитьЗагрузкуДанных обработки КонвертацияОбъектовXDTO. Функция МенеджерОбменаВерсииФормата обращается к внутренней таблице соответствия менеджеров конвертации. Так как переменная версии формата обмена оказалась пустой строкой, система не может сопоставить обработчик и генерирует исключительную ситуацию.
Несоответствие релизов конфигураций: При обновлении одной из баз (например, «Бухгалтерии предприятия») в нее добавляются новые версии формата EnterpriseData, тогда как вторая конфигурация («Управление торговлей») еще не обновлена и работает на более ранних пакетах XDTO. Автоматическое согласование версий в этом случае дает сбой.
Сбой инициализации при прямом подключении: При создании обмена через COM-соединение реквизит ВерсияФормата в узле плана обмена может остаться незаполненным из-за несоответствия разрядностей платформы или отсутствия регистрации библиотеки comcntr.dll.
Зависшие пакеты обмена: В каталоге обмена сохраняются файлы сообщений от предыдущих некорректных сеансов, заголовки которых содержат неинициализированную информацию о формате. База раз за разом пытается их прочитать.
Способ 1. Ручное указание версии формата в узле плана обмена
Разберем по шагам наиболее быстрый способ восстановления работоспособности обмена без отката релизов и глобальной перенастройки узлов.
Откроем информационную базу 1С:Бухгалтерия предприятия под учетной записью с административными правами.
Перейдем в раздел Администрирование, затем выберем Синхронизация данных и откроем Настройки синхронизации данных.
Выделим проблемную настройку обмена с «Управлением торговлей» и нажмем команду Изменить для перехода в форму узла плана обмена.
В открывшейся форме через системное меню Еще перейдем в пункт Изменить форму. Найдем в дереве элементов группу или вкладку с именем Служебная (или технические параметры) и включим для нее флажок видимости, после чего нажмем Применить.
Перейдем на ставшую видимой вкладку Служебная и найдем реквизит Версия формата обмена. Укажем поддерживаемую обеими базами версию формата — как правило, это значение 1.1 или 1.2 (в зависимости от релизов).
Запишем изменения узла плана обмена.
Важный момент: аналогичную проверку и установку значения версии формата обязательно выполним и во второй информационной базе («Управление торговлей»), чтобы узлы обмена имели согласованные значения реквизита ВерсияФормата.
Запустим сеанс синхронизации повторно.
Способ 2. Разблокировка и изменение реквизита «Версия формата обмена»
Нередко на вкладке «Служебная» поле выбора версии формата оказывается серым и недоступным для редактирования пользователем. Посмотрим, как обойти эту блокировку штатными средствами платформы 1С.
Разрешение редактирования ключевых реквизитов: Находясь в форме узла плана обмена, откроем меню Еще в командной панели и выберем пункт Разрешить редактирование реквизитов. Программа выдаст предупреждение подсистемы безопасности — подтвердим действие нажатием кнопки «Разрешить редактирование». После этого поле станет доступным для ручного ввода.
Использование группового изменения реквизитов: Если первый способ недоступен, воспользуемся универсальным инструментом:
Откроем меню Функции для технического специалиста (или «Все функции»).
Найдем и запустим стандартную обработку Групповое изменение реквизитов.
В поле выбора элементов укажем соответствующий план обмена (например, Синхронизация данных через универсальный формат).
Нажмем кнопку Дополнительные параметры, установим флаг Показывать служебные реквизиты и переведем обработку в режим разработчика.
По кнопке отбора выберем узел нужной информационной базы.
В табличной части реквизитов найдем поле ВерсияФормата, установим напротив него флаг и пропишем строку 1.1.
Нажмем Изменить выделенные.
Программная запись значения: Если требуется быстро исправить реквизит во внешней обработке или консоли кода, применим следующий фрагмент:
Способ 3. Переход на обмен через сетевой или локальный каталог
Рассмотрим альтернативное решение, когда ошибка менеджера конвертации вызвана нестабильной работой прямого COM-соединения. Механизм прямого подключения требует абсолютной идентичности платформ, корректной регистрации системных библиотек и совпадения сетевых политик безопасности.
В настройках синхронизации обеих конфигураций изменим транспорт обмена: переключим прямое подключение на Локальный или сетевой каталог (или общий каталог обмена).
Создадим на локальном диске или файловом сервере общую папку и предоставим учетным записям серверов 1С полные права доступа к ней на чтение и запись.
Очистим каталог обмена: перед первым запуском обязательно убедимся, что папка пуста. Все файлы сообщений вида Message_...xml, созданные предыдущими сеансами с ошибкой, необходимо удалить или переместить в архив, иначе база вновь попытается прочитать некорректный заголовок формата.
Выполним первоначальную выгрузку данных из базы-источника в каталог, после чего выполним загрузку в базе-приемнике.
Способ 4. Корректное пересоздание настройки синхронизации
Если указанные выше методы не помогли, наиболее надежным решением станет полное пересоздание узла плана обмена с правильной последовательностью инициализации:
Удалим старую настройку синхронизации в обеих конфигурациях.
Настройку обмена всегда рекомендуется инициировать со стороны конфигурации «Управление торговлей» (как ведущей системы складского и торгового учета).
В процессе создания новой синхронизации сохраним файл с настройками подключения для второй информационной базы на диск.
Перейдем в «Бухгалтерию предприятия» и настроим обмен, выбрав вариант продолжения настройки по файлу, сохраненному из УТ.
Такой подход гарантирует, что версии форматов согласуются на этапе первичного диалога конфигураций, и реквизит ВерсияФормата будет заполнен автоматически без программных сбоев.