1с конвертация данных обновить конфигурацию

Обновлено: 08.07.2024

Многие специалисты работали с обменами данных в КД 2.0/2.1. Конвертация 3.0 представляет совершенно новую технологию. Сейчас мы расскажем её суть.

В чем суть Конвертации данных 3.0

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

Все обмены между различными по структуре базами 1С требовали написания правил обмена.

При таком подходе в базе-Источнике каждый объект проходит ряд преобразований, которые описаны в правилах, созданных для этой пары баз.
Xml-узел, в который выгружается этот объект, по структуре аналогичен объекту в базе-Приемнике. При загрузке его остается только преобразовать в объект информационной базы.

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

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

Тем более, что, если обмен выполняется в обе стороны, то таких правил двое.

В октябре 2014 года была выпущена первая версия «Конвертации данных», редакция 3.0, предназначенная для тестирования.

Новая технология, реализованная в «Конвертации данных 3.0», призвана обособить процессы выгрузки и загрузки, сделать их независимыми. Для этого создана совершенно другая концепция обмена.

Данные будут выгружаться в формат EnterpriseData, который не зависит напрямую от структуры баз Источника и Приемника.

Схема работы конфигурации “Конвертация данных” редакция 3.0. Универсальный формат выгрузки и загрузки данных EnterpriseData

Он предоставляется в виде xsd схемы, на основании которой формируется механизм преобразования объектов между этим форматом и любыми объектами информационных баз. Для упрощения этих преобразований формат EnterpriseData содержит объекты, аналогичные объектам метаданных типовых конфигураций.

Xml-формат EnterpriseData универсален как для обмена между базами 1С, так и со сторонними базами

При обмене через универсальный формат в каждой из баз содержится только код для преобразования объектов из базы в универсальный формат EnterpriseData и обратно.

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

Этот код находится в общем модуле МенеджерОбменаЧерезУниверсальныйФормат. Там же находятся и все обработчики событий, и весь механизм преобразования объектов, благодаря чему значительно упрощается процесс отладки. Там же могут быть описаны параметры, с помощью которых можно использовать единожды описанную там логику преобразования объектов для обмена с разными базами.

При необходимости разработчик может изменить структуру формата EnterpriseData для решения более широкого круга задач.

В процессе настройки обмена сама конфигурация «Конвертация данных 3.0» выполняет на данный момент только одну функцию — на базе структуры метаданных баз, участвующих в обмене, и схемы универсального формата она формирует тексты общих модулей МенеджерОбменаЧерезУниверсальныйФормат для каждой из баз.

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

Новый механизм обмена не исключает также использования правил регистрации. Их настройка в настоящий момент выполняется с помощью конфигурации «Конвертация данных 2.0».

Таким образом, новая технология имеет ряд преимуществ:

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

В ближайшей перспективе планируется постепенный перевод всех обменов между типовыми конфигурациями на новый стандарт.

Однако обмен через Универсальный формат не рассматривается как полная замена технологии обменов по правилам. «Конвертация данных» редакции 2.0/2.1 будет поддерживаться и дальше, так как для решения определенного круга задач она остается более удобным и гибким механизмом.

PDF-версия статьи для участников группы ВКонтакте

Инструкция создания одностороннего обмена данными между конфигурациями "Источник" и "Приемник" с нуля:

  1. Скачиваем последнюю версию конфигурации "Конвертация данных". Сейчас на сайте ИТС перестали почему-то публиковать полные дистрибутивы, поэтому находим где-нибудь изначальный релиз и накатываем обновления с сайта.
  2. В процессе установки обновлений у вас в папке с шаблонами конфигураций (смотрите её расположение в настройках окна запуска 1С) появится папка Conversion с вложенными папками версий конвертации данных. Заходите в последнюю версию на которую обновились и берите оттуда следующие файлы:
    MD80Exp.epf, MD81Exp.epf, MD82Exp.epf, V8Exchan.epf,
    V8Exchan81.epf, V8Exchan82.epf.
  3. Отдельно обращаю ваше внимание. Для успеха операции крайне важно использовать эти файлы из той версии конфигурации "Конвертация данных" в которой вы создаете правила обмена.
  4. Следующий этап: выгрузка метаданных Источника и Приемника в xml файлы. Для этого предназначена обработка MD**Exp.epf. Галки выгружать регистры и прочее снимаете. Используйте нужную в зависимости от платформы. Опять же, повторюсь, - из одного и того же комплекта конвертации данных. Иначе ничего не получится.
  5. Теперь открывайте базу "Конвертация данных".
  6. Заходите в "Справочники"-"Конфигурации". Добавить новый элемент. В качестве файла загрузки указываете выгруженные метаданные. Выбираете "Загрузить в новую конфигурацию". Таким образом создаете две конфигурации с именами, например, Источник и Приемник.
  7. Теперь заходите в "Справочники"->"Конвертации". Добавить новый элемент. Указываете в качестве конфигураций источника и приемника наши созданные конфигурации.
  8. Конвертация данных предложит вам создать правила конвертации объектов и выгрузки автоматически. Соглашайтесь. Тут я подробностей писать не буду. Об этом в интернете много уже есть.
  9. Теперь выгрузите созданный файл правил обмена на диск.
  10. И, наконец, крайне важно для выгрузки и загрузки данных по созданным нами правилам обмена использовать не встроенный универсальный обмен в формате XML из самих конфигураций, а использовать наши V8Exchan**.epf, упомянутые выше.

Итак, главное правило: MD**Exp.epf и V8Exchan**.epf должны быть из одного комплекта, прилагающегося к версии Конвертация данных. Причем той же версии, в которой создавались правила обмена. И никаких встроенных обработок для универсального обмена в формате XML, только V8Exchan**.epf.

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

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

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

У нас имеется информационная база по которой нам нужно получить информацию о ее структуре. Выгрузим информацию о структуре информационной базы в файл. Для этого используется внешняя обработка MD81Exp.epf и MD80Exp.epf для конфигураций на платформе "1С:Предприятии 8.1" и "1С:Предприятии 8.0" а так же MD77Exp.ert для конфигураций на платформе "1С:Предприятии 7.7". Эти обработки входят в комплект дистрибутива конфигурации "Конвертация данных 2.0".

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

Если наша информационная база работает на базе платформы 1С:Предприятие 8.1, то процесс выгрузки информации о структуре информационной базы будет выглядеть следующим образом:

  1. Открытие информационной базы, информацию о структуре метаданных которой необходимо получить (одинаков для всех платформ)
  2. Открытие внешней обработки MD81Exp.epf. Для этого достаточно в главном меню открыть пункт "Файл\Открыть" и указать путь по которому располагается обработка MD81Exp.epf (для платформы 7.7 и 8.0 нужно открывать обработки MD77Exp.ert соответственно MD80Exp.epf).
  3. Указание имени файла, в который необходимо сохранить информацию о структуре информационной базы
  4. Нажатие на кнопку Выполнить

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

Осталось только загрузить данную информацию в программу и можно будет приступить к настройке правил обмена данными.

Загрузка информации о структуре информационной базы

Когда файл с информацией о структуре метаданных готов, его можно загрузить в конфигурацию "Конвертация данных".

Для этого достаточно открыть "Панель функций" и выбрать пункт "Загрузить структуру метаданных конфигурации".

Загрузить структура метаданных конфигурации

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

Загрузка структуры метаданных конфигурации

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

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

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

Конфигурация БухгалтерияПредприятия

В справочнике "Конфигурации" хранится информация о информационной базе из которой были выгружены данные. Имеется возможность посмотреть информацию о структуре информационной базы.

Описание конфигурации

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

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

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

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

В октябре 2014 года фирма «1С» выпустила первую версию конфигурации Конвертация данных, редакция 3.0.

Рассмотрим, как же работает обмен с помощью КД 3.0.

Принципы обмена с помощью Конвертации данных 3.0

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

Формат EnterpriseData предоставляется в виде двух xsd-схем:

ExchangeMessage
EnterpriseData

Это основная схема, в которой описаны все объекты нового формата, их свойства и типы значений.

Объекты в этой схеме по структуре и наименованию аналогичны объектам метаданных типовых конфигураций. Это сделано для упрощения трансформации объектов типовых конфигураций в универсальный формат и обратно.

Схема содержит объекты для переноса информации трех основных типов: нормативно-справочная информация, документы и остатки на заданную дату.

XDTO-пакет EnterpriseData

Эти xsd-схемы в виде XDTO-пакетов входят в подсистему «Обмен данными» БСП начиная с версии 2.2.5.

Для разработки обмена с использованием универсального формата эти схемы должны быть выгружены во внешние файлы и загружены в конфигурацию Конвертация данных 3.0.

Далее разработчик может независимо настраивать обмен для каждой отдельно взятой базы. Он выгружает из нее описание структуры метаданных и также загружает его в Конвертацию данных 3.0. Используя специальный интерфейс, создает логику, согласно которой объекты этой базы могут преобразовываться в объекты универсального формата и обратно. Он настраивает соответствие объектов и типов, пишет обработчики событий, происходящих в разные моменты преобразования объектов.

Конвертация данных 3.0. Настройка правил обмена

На основании настроенной таким образом логики конфигурация Конвертация данных 3.0 формирует код, реализующий эту логику.

Он должен быть помещен в общий модуль МенеджерОбменаЧерезУниверсальныйФормат соответствующей базы. В нем содержится механизм преобразования объектов базы данных в универсальный формат и обратно, а также все обработчики событий.

После того, как модуль сформирован, разработчик обмена имеет возможность корректировать все механизмы непосредственно в этом модуле, не используя конфигурацию Конвертация данных. А также он получает возможность простой отладки в случае возникновения ошибок. Можно также загрузить правила из модуля МенеджерОбменаЧерезУниверсальныйФормат обратно в базу Конвертация данных 3.0, чтобы иметь возможность настраивать их в интерфейсе.

Когда настройка преобразования объектов одной базы завершена, разработчик может перейти к настройке обмена для следующей базы.

При необходимости разработчик может сам незначительно изменять предоставленные схемы, или разработать собственный формат, если это требуется. Для каждой версии каждого формата должна быть описана своя логика преобразования объектов.

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

Читайте также: