Как настроить обмен данными между Розница 1.0 и Комплексная автоматизация 2.2 с помощью Конвертации данных?

Программист 1С v8.3 (Обычные формы) 1С:Комплексная автоматизация Торговля и дистрибуция
← На главную

При попытке настроить прямой обмен данными между устаревшей конфигурацией «Розница 1.0» (работающей на платформе 1С 8.1) и «Комплексная автоматизация 2.2» (на платформе 8.3) специалисты часто сталкиваются с ошибкой преобразования данных XML при загрузке структуры метаданных в конфигурацию «Конвертация данных».

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

Выбор правильной версии конфигурации «Конвертация данных»

Проанализируем доступные инструменты для создания правил обмена:

  1. Конвертация данных 3.0 (КД 3.0) — не подходит для этой задачи. КД 3.0 использует формат EnterpriseData и требует поддержки специфических модулей выгрузки, которые отсутствуют на платформе 8.1 и в конфигурациях поколения 1.0.
  2. Конвертация данных 2.1 (КД 2.1) — единственный верный вариант для связи конфигураций на платформе 8.1 и 8.3 через правила выгрузки/загрузки данных.

Обратите внимание: для выгрузки структуры метаданных из разных платформ используются разные внешние обработки:

  1. Для 1С:Предприятие 8.1 используется обработка MD81Exp.epf.
  2. Для 1С:Предприятие 8.3 используется обработка MD83Exp.epf.

Все необходимые обработки выгрузки вы найдете в каталоге установки шаблона конфигурации «Конвертация данных 2.1» (подпапка 1Cv82/Convert или 1Cv83/Convert в папке шаблонов).

Почему возникает ошибка преобразования XML?

Ошибка формата XML при загрузке файла структуры MD81Exp.xml в КД 2.1, запущенную на платформе 8.3, обусловлена разницей в работе синтаксических анализаторов (парсеров XML) платформ 8.1 и 8.3. Платформа 8.1 при выгрузке метаданных может создавать теги и непечатаемые символы, которые XDTO-парсер платформы 8.3 воспринимает как некорректный формат данных.

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

Разберем по шагам наиболее эффективный вариант решения проблемы:

  1. Выполним выгрузку структуры информационной базы «Розница 1.0» под платформой 8.1 с помощью обработки MD81Exp.epf, взятой из официального дистрибутива КД 2.1.
  2. Запустим информационную базу «Конвертация данных 2.1» под платформой 8.1 (или 8.2).
  3. Загрузим полученный файл структуры «Розница 1.0» в КД 2.1 — под старой платформой загрузка пройдет без ошибок XML.
  4. Загрузим структуру метаданных «КА 2.2» (выгруженную через MD83Exp.epf на 8.3) в ту же базу КД 2.1, открыв её уже под платформой 8.3.

Способ 2. Конвертация копии базы Розницы 1.0 на платформу 8.3

Рассмотрим альтернативный вариант без необходимости запуска КД 2.1 на платформе 8.1:

  1. Создадим технологическую копию базы «Розница 1.0».
  2. Откроем копию базы в режим Конфигуратора платформой 1С 8.3 и подтвердим конвертацию информационной базы (режим совместимости конфигурации при этом менять не требуется).
  3. Запустим обработку MD83Exp.epf непосредственно в этой конвертированной базе под платформой 8.3 и сформируем XML-файл структуры.
  4. Загрузим получившийся XML-файл в КД 2.1 — сбой парсера XML не возникнет, так как выгрузка и загрузка выполняются на одной платформе.

Способ 3. Использование прямого COM-подключения

Если настройка регулярного обмена через правила выгрузки затруднена, проанализируем вариант прямой интеграции. В КА 2.2 можно написать обработку загрузки, которая напрямую подключается к базе «Розница 1.0» через COM-соединение:


COMОбъект = Новый COMОбъект("V81.COMConnector");
Соединение = COMОбъект.Connect("Srvr=""ServerName"";Ref=""RetailBase"";Usr=""Admin"";Pwd=""123"";");

С помощью объекта V81.COMConnector из «Комплексной автоматизации 2.2» вы сможете напрямую выбирать документы и справочники из «Розницы 1.0», минуя выгрузку в промежуточные XML-файлы.

← На главную