В данной статье разберем основы технологии обмена данными с помощью 1С:Конвертации данных 3.0 – как это работает, какие преимущества, актуальны ли старые технологии обмена.
Многие специалисты работали с обменами данных в КД 2.0/2.1. Конвертация 3.0 представляет совершенно новую технологию. Сейчас мы расскажем её суть.
В чем суть Конвертации данных 3.0
Конфигурация «Конвертация данных» впервые была выпущена фирмой 1С для платформы 7.7, и с тех пор механизмы обменов данными развивались в рамках одного подхода.
Все обмены между различными по структуре базами 1С требовали написания правил обмена.
При таком подходе в базе-Источнике каждый объект проходит ряд преобразований, которые описаны в правилах, созданных для этой пары баз.
Xml-узел, в который выгружается этот объект, по структуре аналогичен объекту в базе-Приемнике. При загрузке его остается только преобразовать в объект информационной базы.
Для того, чтобы создать правила, нужно знать структуру метаданных базы-Источника и базы-Приемника, и описать преобразование объектов всех нужных типов. Правила выгружаются во внешний xml-файл, который используется каждый раз при выгрузке.
Универсальный конвертер | FileConverter
Одна из проблем этого подхода заключается в том, что после каждого изменения конфигурации баз Источника или Приемника необходимо проверять правила на актуальность, что является долгим и не всегда простым процессом.
Тем более, что, если обмен выполняется в обе стороны, то таких правил двое.
В октябре 2014 года была выпущена первая версия «Конвертации данных», редакция 3.0, предназначенная для тестирования.
Новая технология, реализованная в «Конвертации данных 3.0», призвана обособить процессы выгрузки и загрузки, сделать их независимыми. Для этого создана совершенно другая концепция обмена.
Данные будут выгружаться в формат EnterpriseData, который не зависит напрямую от структуры баз Источника и Приемника.
Формат EnterpriseData – это xml-формат, который создан, чтобы стать универсальным для всех обменов как между базами 1С, так и со сторонними базами.
Он предоставляется в виде xsd схемы, на основании которой формируется механизм преобразования объектов между этим форматом и любыми объектами информационных баз. Для упрощения этих преобразований формат EnterpriseData содержит объекты, аналогичные объектам метаданных типовых конфигураций.
При обмене через универсальный формат в каждой из баз содержится только код для преобразования объектов из базы в универсальный формат EnterpriseData и обратно.
ТОП-5 программ для конвертации видео в любой формат
При выгрузке не используется информация о том, какую структуру имеют базы-получатели. Поэтому при изменении конфигурации каждой из баз, участвующих в обмене, нужно будет изменить этот код только в этой базе.
Этот код находится в общем модуле МенеджерОбменаЧерезУниверсальныйФормат. Там же находятся и все обработчики событий, и весь механизм преобразования объектов, благодаря чему значительно упрощается процесс отладки. Там же могут быть описаны параметры, с помощью которых можно использовать единожды описанную там логику преобразования объектов для обмена с разными базами.
При необходимости разработчик может изменить структуру формата EnterpriseData для решения более широкого круга задач.
В процессе настройки обмена сама конфигурация «Конвертация данных 3.0» выполняет на данный момент только одну функцию — на базе структуры метаданных баз, участвующих в обмене, и схемы универсального формата она формирует тексты общих модулей МенеджерОбменаЧерезУниверсальныйФормат для каждой из баз.
Удобным будет сформировать эти модули на начальных этапах настройки обмена, а дальнейшие доработки выполнять непосредственно в тексте модулей в конфигураторе.
Новый механизм обмена не исключает также использования правил регистрации. Их настройка в настоящий момент выполняется с помощью конфигурации «Конвертация данных 2.0».
Таким образом, новая технология имеет ряд преимуществ:
- Для обмена между тремя и более базами не нужно создавать отдельные правила для каждой пары баз
- Упрощается поддержка обменов данными в случае изменения конфигураций баз
- Создан новый универсальный формат, который может быть использован, в частности, для обмена со сторонними базами
- Упрощается отладка алгоритмов, используемых при выгрузке-загрузке объектов.
В ближайшей перспективе планируется постепенный перевод всех обменов между типовыми конфигурациями на новый стандарт.
Однако обмен через Универсальный формат не рассматривается как полная замена технологии обменов по правилам. «Конвертация данных» редакции 2.0/2.1 будет поддерживаться и дальше, так как для решения определенного круга задач она остается более удобным и гибким механизмом.
Чтобы узнать, как КД 3.0 выполняет обмен данными, переходите к следующей статье – Конвертация данных 3.0. Новая технология.
Ольга Кузнецова
PDF-версия статьи для участников группы ВКонтакте
Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.
Статья в PDF-формате
Вы можете скачать эту статью в формате PDF по следующей ссылке: Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Если Вы уже участник группы – нужно просто повторно авторизоваться в ВКонтакте, чтобы скрипт Вас узнал. В случае проблем решение стандартное: очистить кеш браузера или подписаться через другой браузер.
Другие статьи по программированию:
Ольга Кузнецова
Добрый день К сожалению, да, проблема еще не решена. На партнерском форуме разработчики периодически выкладывают измененную обработку для выгрузки правил, которая подходит для новых версий конфигураций. https://partners.v8.1c.ru/forum/topic/1661760
Добрый день!
Как выгрузить один объект в два (три и т.п.)? Например,выгрузить документ на перечисление налогов “ЗаявкаНаПереводДСВБюджет” разбив документ, где в табличной части разные получатели налогов, на соответствующее кол-во документов разбитых по получателям налогов.
Ольга Кузнецова
Добрый день Скорее всего, нужно будет воспользоваться функцией ВыгрузкаОбъектаВыборки(). Она позволяет выгрузить любой объект, даже если он не был зарегистрирован к выгрузке. Здесь самая большая проблема будет с идентификацией. Если Вы выгружаете один объект в несколько объектов одного типа, то уникальный идентификатор не получится для этого использовать. Придется настроить поиск по полям, но нужно следить, чтобы значения этих полей не менялись ни в источнике, ни в приемнике.
IpotekaLand
Ольга, добрый день.
Пытаюсь загрузить правила обмена в конвертацию 3.0 на текущих конфигурациях
Источник БП 3.0.53.39
Приемник ЕРП 2.4.1.227
Вопросы
1) Будут ли работать правила из актуальных конфигураций (октябрь 2017) в конвертации 3.0.4.3 или сразу работать 3.0.5.3
2) На сайте 1С написано что одно из отличий между версиями Конвертации 3.0 – работа с табличными частями, можно более подробно об этом, (например когда – как сейчас работает выгрузка/загрузка Табличной части). Пробывал пример с сайта 1С – не вышло.
3) В конфигурации БП 3.0 сейчас два общих модуля – МенеджерОбменаЧерезУниверсальныйФормат и МенеджерОбменаЧерезУниверсальныйФормат13, как система определяет какие правила надо использовать? Как мне определить какой модуль следует использовать для загрузки правил? Как конвертация определяет из какого модуля прочитать правила обмена?
4) Для чего нужно указывать несколько поддерживаемых версий форматов для одной конвертации, мы же ведем разработку только в одном формате, например 1.0 (как в лекциях)
5) Для конфигурации ЕРП пытаюсь загрузить правила синхронизации из файлов (причем для БП 3.0 все получилось), выбрал каталог обмена, выбрал модуль менеджера, выбрал ранее созданную конвертацию ЕРП (указал только одну версию формата – 1.4) и при загрузке ошибка – “Поле объекта не обнаружено”, как победить?
IpotekaLand
По пункту 5 разобрался… Почему то “ВариантыИдентификации” для некоторых правил конвертации не указаны в общем модулеМенеджерОбменаЧерезУниверсальныйФормат, поправил вручную уже в самой конвертации.
Источник: xn—-1-bedvffifm4g.xn--p1ai
Конвертация данных в 1С 8.3 Предприятие
Гарантируем стабильный обмен без ошибок между программами 1С. Гарантии фиксируем в договоре.
от 5 400 руб.
Перенос данных 1С
Перенос любых данных 1С. Готовые механизмы переносов. Один звонок и мы решаем вопрос.
от 2 700 руб.
Консультации по 1С
Протестируйте качество нашей работы — получите первую консультацию в подарок.
от 700 руб.
Эффективная работа программ 1С Предприятие 8.3 обусловлена правильностью настройки обмена данными между ними, то есть выгрузки и загрузки справочников, а также другой информации. В некоторых ситуациях для настройки обмена в 1С достаточно воспользоваться обработкой «Универсальный обмен данными XML» или имеющимися типовыми правилами переноса, к примеру, при переходе с одной редакции программ на другую. Они могут быть встроены в программу с определенным списком правил обмена или находиться в папке установленного обновления. Например, AccountingBase («Бухгалтерия», базовая версия) и там находится папка «Обмен данными».
Приглашаем на
бесплатный вебинар!
18 июля в 11:00 мск
Но когда нужен обмен между совершенно разными конфигурациями, а значит и правила переноса для нетиповых версий, для чего будет нужна настройка правил обмена и сопоставление объектов для переноса, следует прибегнуть к внешней программе, предназначенной для создания правил конвертации между любыми конфигурациями вне зависимости от их структуры и сложности.
Правила конвертации данных в 1С 8.3
Для описания метаданных используется внешняя обработка MD83Exp.epf – для продуктов на платформе «1С:Предприятие 8.3» (управляемое приложение), MD82Exp.epf – для обычного приложения, в формате XML-файла. Обычно файл обработки располагаются в каталоге шаблонов, куда установлена конфигурация. К примеру, C:Program Files1Сv8tmplts1СConversion3_0_5_3. В нашем примере используется «1С:Конвертация данных, ред. 3.0» (релиз 3.0.5.3).
Подготовка файла конвертации заключается в формировании XML-файла правил обмена. Рассмотрим на небольшом примере ход его создания.
Шаг 1. Программу можно скачать с сайта ИТС или установить с диска ИТС (доступ и диск предоставляется в рамках абонентского сопровождения 1С для версий КОРП и ПРОФ). Предположим, нам необходимо выгрузить справочник «Контрагенты» из «Бухгалтерии» в «УТ 8.3». Первая программа у нас – «База-источник», а вторая – «База приемник». Отметим, что обмен настраивается не только между базами 8.3, но и между 7.7 и 8.3 и другими.
Шаг 2. Выгружаем в файл XML структуру метаданных баз, задействованных в обмене, с помощью обработки MD83Exp.epf. Для этого в «Базе-источнике» и «Базе-приемнике» в режиме «1С Предприятие» открываем указанную обработку и выгружаем с ее помощью структуру конфигураций, указав имя формируемого файла. Для примера, так и назовем файлы – «База источник» и «База приемник».
По окончании выгрузки у нас получилось два файла с описанной структурой двух конфигураций.
Шаг 3. Выполняем экспорт xml-схемы формата обмена. Это файл с расширением «xsd». Получить его можно и из «Источника», и из «Приемника». Для этого откроем информационную базу в режиме «Конфигуратор» («Открыть конфигурацию»), в дереве метаданных раздел «Общие» и подраздел XDTO-пакеты.
Найдем строки с именем «EnterpriseData» (разные цифры – это разные версии формата) и, нажав правой кнопкой мышки, выберем команду «Экспорт XML-схемы».
Укажем путь выгрузки и выгрузим.
Шаг 4. Добавляем структуру базы выгруженных конфигураций (источника и приемника) в базу «1С:Конвертация данных». Для этого в пункте меню «Конфигурация» для каждого сформированного файла (источник и приемник) выполняем «Загрузку структуры конфигурации».
Указываем путь к нашему файлу, способ загрузки выбираем – «В новую версию конфигурации», и нажимаем кнопку «Выполнить загрузку».
После загрузки файлов, если мы зайдем в раздел меню «Конфигурации», мы увидим две наших загруженных конфигурации.
Шаг 5. Загружаем структуры формата обмена. В пункте меню «Формат данных» выбираем команду «Загрузка структуры формата».
Указываем ранее выгруженный файл и нажимаем кнопку «Выполнить загрузку».
После окончания загрузки проверим результат. Зайдем в меню «Формат данных» — «Дерево объектов формата». Выбрав загруженный нами формат, мы видим его структуру.
Шаг 6. Создание конвертации. Для выполнения поставленной нами задачи, создаем две конвертации. Первая – для выгрузки справочников «Сотрудники» и «Контрагенты» из «Бухгалтерии», а вторая – для загрузки в «УТ». Перейдем в меню «Конвертации».
Для каждой операции указываем наименование, например – «Выгрузка из БП», «Загрузка в УТ», название – БухгалтерияПредприятия, УправлениеТорговлей и версию формата (который мы загрузили, в нашем примере 1.6).
Шаг 7. Для создания правил в том же пункте меню найдем пункт настроек.
Открыв отдельно каждую операцию, настроим ее. На закладке «Правила конвертации объектов» нажимаем кнопку «Создать».
На закладке «Основные сведения» указываем идентификатор нашего правила (например, Справочник_Контрагенты_Выгрузка), объект конфигурации и объект формата. Область применения – «Для отправки».
Жмем «Автосопоставление», а нажатием кнопки «Создать правила конвертации свойств» сохраняем результат.
При необходимости другие поля настраиваются для конвертации вручную.
Шаг 8. Аналогично настраивается правило конвертации для загрузки, в нашем примере в «Управление торговлей». Обращаем внимание, что область применения – «Для получения».
На закладке «Правила конвертации свойств» выполняем автосопоставление и, нажав кнопку «Создать правила конвертации свойств», сохраняем результат.
Шаг 9. В обоих созданных правилах конвертации создаем правило конвертации предопределенных данных, перейдя на одноименную закладку, нажав кнопку «Создать», при этом сопоставив значения в таблице из конфигурации и формата. Область применения – «Для получения и отправки».
Аналогично выполняем действия для правила «Загрузка в УТ».
Указываем новое правило конвертации свойства «ЮридическоеФизиескоеЛицо» для нашего справочника. Откроем правило конвертации объекта «Справочник_Контрагенты_Выгрузка».
На закладке «Правила конвертации свойств» добавим правило конвертации свойства, указав в нем «Перечисление_ЮридическоеФизическоеЛицо».
Действие аналогично и для второго правила «Справочник_Контрагнеты_Загрузка».
Шаг 10. Создаем правило обработки данных. Действия одинаковы для обоих созданных нами правил. Перейдя в правило конвертации, нажимаем кнопку «Создать на основании» — «Правило обработки данных».
Данные в него попадают автоматически.
Аналогично формируем правило для загрузки.
Шаг 11. Выгрузить модуль менеджера обмена, или в правиле конвертации, нажав «Сохранить модуль менеджера обмена», или через пункт «Конвертация» — «Выгрузка модуля».
Аналогично поступаем с правилом конвертации для загрузки справочника.
Далее открываем конфигурацию, для которой предназначается наш модуль, и в дереве метаданных ищем «МенеджерОменаЧерезУниверсальныФормат», открываем его и вставляем туда свой скопированный в буфер обмена модуль.
При настройке обмена рассматриваемая программа имеет пока единственную функцию – формирование текстов общих модулей МенеджерОбменаЧерезУниверсальныйФормат для каждой из баз, используя структуру метаданных конфигураций, участвующих в обмене, и схемы универсального формата. Эти модули лучше сформировать и применять на исходном этапе настройки обмена, а продолжать их доработку стоит прямо в тексте модуля конфигуратора.
Редакция конфигурации «Конвертация данных 3.0» – новая, но прогрессивная технология упрощения обмена между конфигурациями, которая, используя универсальный формат обмена EnterpriseData, позволяет эффективно ответить на вопрос «Как перенести данные из одной 1С в другую?».
Источник: wiseadvice-it.ru
Конвертация данных, редакция 3.0. Урок 1. Подготовка работы с КД3.0
Конвертация данных, редакция 3.0 (далее КД3.0) – является одним из компонентов технологии обмена данными через формат EnterpriseData. КД3.0 не является заменой конфигурации Конвертация данных, редакция 2.0 (далее КД2.0). Это новый стандарт, который сильно отличается от КД 2.0 . Главное назначение КД3.0 – это создание программный код модуля менеджера обмена , состоящий из процедур и функций, в которых реализована логика загрузки данных, представленных в формате EnterpriseData, а также логика выгрузки данных в формат.
КД3.0 можно скачать на сайте https://users.v8.1c.ru/
Редакция 3.0.5.3 , предназначена для использования с версией системы
1С:Предприятие 8.3 не ниже 8.3.10, а редакция 3.0.4.3 – для использования с версией системы 1С:Предприятие 8.3 не ниже 8.3.8.
Поставка КД3.0 содержит следующие внешние обработки
- Обработка MD83Exp.epf “Выгрузка описания структуры метаданных конфигурации 8.3” – предназначена для выгрузки описания структуры метаданных любой конфигурации, реализованной на платформе “1C:Предприятие 8.3”.
- Обработка Выгрузка правил синхронизации.epf “Выгрузка правил синхронизации через универсальный формат” используемую при подготовке файлов правил конвертации, предназначенных для последующей загрузки в конфигурацию “Конвертация данных”, редакция 3.0.
- Файл “Описание конфигурации.htm” содержит краткое описание
основных функциональных возможностей конфигурации
“Конвертация данных”, редакция 3.0.
Дополнительные сведения по конфигурации “Конвертация данных”, редакция 3.0
см. http://its.1c.ru/db/metod8dev#content:5846:hdoc
1. Подготовка к настройке правил
1.1 Обработка “Загрузка структуры формата”
Для загрузки структуры формата нужно сначала открыть конфигурацию базу данных в режиме конфигуратора и выгрузить пакеты XDTO из конфигурации в файлы *.xsd.
Необходимо выгружать все пакеты, которые связаны с форматом. Имена файлов при этом принципиального значения не имеют. Необходимо также выгружать XDTO-пакет ExchangeMessage
После выполнения загрузки формата XDTO в КД 3.0 происходит заполнение справочников “Объекты формата”, “Свойства формата”, “Значения формата”
В справочник “Объекты формата” загружаются :
- Объекты с типом “ТипОбъектаXDTO”, которые отражают ссылочные типы данных (документы, справочники)
- Объекты с типом “ТипЗначенияXDTO”, содержащие перечисление. Они отражают предопределенные данные (например, перечисления)
В справочник “Свойства формата” загружаются :
- Свойства объектов “ТипОбъектаXDTO”. При этом сами объекты – те что были загружены в “Объекты формата”
- Объекты с типом “ТипОбъектаXDTO” и их свойства, которые отражают табличные части и реквизиты табличных частей
В справочник “Значения формата” загружаются свойства объектов “ТипЗначенияXDTO”, представляющие собой элементы предопределенных данных. При этом сами объекты – те что были загружены в “Объекты формата”
1. 2. Обработка “Загрузка структуры конфигурации”
Данная обработка выполняет загрузку структуры метаданных конфигурации в информационную базу Конвертация данных ред.3.
Для выгрузки информации о структуре информационной базы используется обработка MD83Exp.epf, входящая в комплект поставки конфигурации КД3.0
Для информационной базы, структуру которой необходимо выгрузить, следует выполнить следующие действия:
- Открыть информационную базу в режиме “Предприятие”.
- Открыть внешнюю обработку MD83Exp.epf (Меню Файл — Открыть).
- Указать имя файла, в который следует сохранить структуру информационной базы.
- Проверить настройки в форме обработки (все флаги должны быть сняты).
- Нажать кнопку Выгрузить.
После выполнения выгрузки структуры конфигурации заполняются справочники
- Объекты метаданных
- Свойства объектов
- Значения объектов .
Справочник Объекты метаданных содержит информацию об объектах метаданных конфигурации. Тип объектов фиксируется в соответствующем реквизите. В зависимости от значения реквизита Тип, заполняются реквизиты, описывающие свойства объекта метаданных. Реквизиты объектов метаданных описываются в подчиненном справочнике Свойства объектов . Значения объектов (значения перечислений и имена предопределенных элементов) описываются в подчиненном справочнике Значения объектов.
1.3. Загрузка правил синхронизации через универсальный формат из файлов
Перед загрузкой правил синхронизации через универсальный формат из файлов быть загружен формат данных( с помощью обработки Загрузка структуры формата (см.пункт 1.1), а также должна быть загружена конфигурация, для которой настраиваются правила синхронизации. Загрузка конфигурации выполняется с помощью обработки Загрузка структуры конфигурации (см.пункт 1.2). Отметим также, что быть создан элемент справочника Конвертации . Для конвертации должна быть указана конфигурация и одна или несколько версий формата, для которых конвертация предназначена.
1.3.1 Подготовка файлов для загрузки правил
Подготовка файлов выполняется в информационной базе, для которой будет выполняться обмен в универсальном формате (например, Бухгалтерия предприятия ред.3.0).
Для подготовки файлов правил необходимо войти в информационную базу в режиме Предприятие и запустить обработку Выгрузка правил синхронизации через универсальный формат, которая входит в состав поставки конфигурации Конвертация данных ред.3.
Для подготовки файла с модулем менеджера необходимо войти в информационную базу в режиме Конфигуратор и сохранить общий модуль МенеджерОбменаЧерезУниверсальныйФормат в текстовый файл. Имя файла можно указать любое.
Все подготовленные файлы должны располагаться в одном каталоге.
1.3.2 Загрузка правил синхронизации
Выполняется в информационной базе Конвертация данных ред.3 с помощью обработки Загрузка правил синхронизации из файлов.
В форме обработки указать:
- Каталог обмена, в котором расположены подготовленные ранее файлы
- Конвертацию
- Состав загружаемых данных
- либо указать вариант “все”
- либо выбрать выборочную загрузку, и настроить перечень правил, которые следует загружать
1.3.3 Особенности загрузки в непустую базу
- Если загружаемое правило существует, и оно принадлежит только одной конвертации (текущей) – правило будет изменено. При этом не выполняется анализ отличий между существующим и загружаемым правилом, правило перезаполняется и записывается безусловно.
- Если загружаемое правило существует, и оно принадлежит нескольким элементам справочника Конвертации, включая текущую конвертацию – будет создано новое правило и привязано к текущей конвертации. “Старое” правило останется без изменений, и останется привязанным к другим конвертациям.
- Группы правил не загружаются. Но если правило было отнесено к какой-то группе, при повторной загрузке в это правило данная информация сохранится.
Поделиться ссылкой:
- Нажмите, чтобы поделиться на Twitter (Открывается в новом окне)
- Нажмите, чтобы открыть на Facebook (Открывается в новом окне)
Источник: master1c8.ru