С Конвертация Данных 1 0

Posted on
С Конвертация Данных 1 0 Rating: 5,9/10 7863 votes
  1. С Конвертация Данных 1 1.0

Модули платформы 1С:Предприятие. Этапы обучения в школе программирования (как стать программистом 1С с нуля). Секреты конфигурации '1С Конвертация данных'. Инструкция создания одностороннего обмена данными между конфигурациями 'Источник' и 'Приемник' с нуля: Скачиваем последнюю версию конфигурации 'Конвертация данных'. Сейчас на сайте ИТС перестали почему-то публиковать полные дистрибутивы, поэтому находим где-нибудь изначальный релиз и накатываем обновления с сайта. Курсы по 1С (Профессиональные курсы по 1С: программирование, типовые конфигурации (УПП, КА, ЗУП, УТ11), подготовка к аттестации, разработка, настройка и внедрение) - Бесплатные примеры, записи вебинаров и материалы из курса по Конвертации Данных Они помогут понять, что такое 1С:Конвертация Данных, решить несколько распространенных задач и увидеть содержание наших курсов:) Что на этой странице: Несколько начальных глав из курса по Конвертации Данных. Версия 2.1.8.2. Новое в версии. Добавлена возможность выгрузки комплекта правил из формы сохранения правил обмена; Исправление ошибок. Материалы, учебники, документация по Конвертация данных 2.0. Первым делом советую бесплатный видеокурс Ильи Леонтьева, он доступен.

Вопросы и ответы. КД3 это новая версия КД2? Это другой инструмент, который решает аналогичные КД2 задачи. Каждому инструменту своё применение. КД3 лучше КД2? Их нельзя сравнивать, т.к.

С Конвертация Данных 1 1.0

Это разные инструменты и у каждого есть свои плюсы и минусы. Для изменения правил обмена КД3 нужно снимать конфигурацию с поддержки? Нет НЕ нужно снимать с поддержки! В типовых конфигурациях можно штатно подключить внешнюю обработку с правилами, а на конфигурациях поддерживающих платформу 8.3.10 и выше можно редактировать правила с помощью расширения. Нужно перенести данные из конфигураций собственного изготовления. Для целей изучения можно воспользоваться КД3? Если Вы задаёте этот вопрос, скорее всего нельзя. Для КД3 в составе конфигурации должна быть БСП 2.3 и выше с синхронизацией через универсальный формат.

КД2 вам подойдёт 100%, КД3 под вопросом. Можно ли использовать КД3 для типовых доработанных конфигураций?

Если ваши нетиповые данные можно передать используя ED или реквизит AdditionalInfo, то хорошо. Иначе есть вариант изменения формата обмена (XML схемы). В этом случае возможности КД3 почти сравняются с КД2, но пропадёт основной плюс КД3 – универсальность формата обмена. Конфигурации, поддерживающие ED, могут обмениваться между собой? Но для обмена БП 3.0 – БП 3.0 при создании синхронизации нельзя выбрать БП 3.0. Ничего страшного, выбирайте «Другая программа».

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

Правила содержаться в модуле конфигурации. Для обмена с другими базами 1С не требуется загружать правила другой базы.

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

Не требуется синхронно обновлять все базы, участвующие в обмене. Это один из плюсов КД3.

Наши конфигурации сильно доработаны, там новые виды документов и справочников, КД3 может их перенести? Есть вероятность, что без изменения формата не сможет. Это один из “минусов” КД3 по сравнению с КД2. Зачем тогда нужна КД3? Плюсы и минусы Плюсы КД3 Рассмотрим основной плюс КД3 на примере часто встречающейся задачи.

Есть конфигурация УТ 11.3, которая не обновляется по каким либо причинам. Необходимо организовать обмен с БП 3.0, которая постоянно обновляется до актуального релиза. Универсальный формат обмена, который используется в КД3 предназначен для решения подобных задач. Правила обмена в УТ создаются не для обмена с БП а для обмена с универсальным форматом EnterpriseData.

Если оперировать понятиями КД2, то УТ обменивается с конфигурацией ED, которая не меняется. БП 3.0 тоже обменивается с ED. У каждой конфигурации свои правила обмена с ED. Таким образом УТ выгружает данные всегда в один и тот же формат. Конфигурация БП 3.0, какая бы она новая не была должна уметь принимать данные из этого формата.

Получается что в УТ не нужно заботится о том, что БП поменяются какие-то реквизиты. Задача простая – выгрузить в ED, а конфигурация БП должна уметь принять данные из этого формата. В связи с тем, что конфигурация источник выгружает всегда в одном формате, любая конфигурация приемник может загрузить в себя данные из этого универсального формата. Для произвольной комбинации обменов УТ – БП, УТ – КА, УТ – ERP, КА- БП, ERP – БП. Не нужно писать индивидуальные правила. В КД3 правила универсальны. Любая конфигурация, поддерживающая обмен в универсальном формате может обмениваться с любой конфигурацией, поддерживающей формат ED.

Отладка алгоритмов и правил доступна в самой конфигурации, т.к. Все правила это код общего модуля или внешней обработки.

Можно обойтись без КД3 для оперативного исправления ошибки. Минусы КД2 Правила обмена индивидуальны для каждой пары конфигураций. Для всех вышеперечисленных комбинаций обмена между разными видами конфигураций и разными версиями конфигураций нужны свои правила обмена.

Поэтому для решения вышеозвученной задачи обмена УТ 11.3 и БП 3.0 потребуется почти после каждого обновления БП 3.0 отлаживать и дорабатывать правила обмена. Отладка алгоритмов и правил затруднена для начинающего программиста или для того, кто редко сталкивается с этой задачей.

Правила хранятся в xml файле. Быстрое исправление ошибки недоступно. Необходимо загрузить правила в КД2, исправить и выгрузить обратно. Минусы КД3 Универсальный формат накладывает ограничения на виды документов и справочников. Он разработан для типовых конфигураций. Если у Вас нетиповой реквизит или вид документа, могут возникнуть сложности при обмене. Для осуществления синхронизации в формате ED конфигурация должна поддерживать эти механизмы.

Всё это есть в БСП 2.3 и выше. Это не совсем минус, это скорее особенность. Плюсы КД2 Возможности КД2 безграничны.

Можно создать правила обмена для любых конфигураций на любой платформе. От 1С 7.7 до последней 8.3. От конфигурации ничего не требуется, БСП не обязательна. Правила могут быть созданы в автоматическом режиме и доработаны. В связи с вышесказанными плюсами и минусами рекомендуется использовать КД3 для типовых конфигураций. КД2 можно использовать для любых конфигураций, но учитывая её минусы не забывать, что иногда целесообразнее использовать КД3.

Надеюсь пришло понимание зачем нужна КД3, продолжаем по существу. Принятые сокращения далее БСП – Библиотека стандартных подсистем. ПОД – правило обработки данных. ПКО – правило конвертации объекта. ПКПД – правило конвертации предопределенных данных.

ПКС – правило конвертации свойства. Рассмотрим пример – необходимо изменить типовые правила обмена БП 3.0 и УТ 11.3 На желтом фоне указаны шаги из инструкции, которая открывается в КД3. Предложенная в этой статье последовательность шагов другая, чтобы не запутаться и сразу логически завершить начатое действие. Как изменить правила ED?. Доработать модуль с правилами обмена прямо в конфигурации. Этот вариант пока не рассматриваем, т.к. Для понимания что и где нужно менять, необходимо хотя бы один раз сделать это в КД3. В этом случае будет проще в будущем оперативно решать проблемы, отлаживать в модуле и переносить в КД3 при необходимости.

Воспользоваться КД3. Как это делается в КД2? Выгружаем метаданные обеих конфигураций и загружаем в КД2. Шаг 1. Для КД3 делаем аналогично – в каждой конфигурации в режиме предприятия обработкой tmplts 1c Conversion 3053 MD83Exp.epf выгружаем метаданные конфигураций, например, в папку « D: Правила БП3 БП 3.0.54.15 », имя файла « МД.xml».

Непонятно с какой целью скрыты настройки этой обработки, в результате по умолчанию не выгружаются данные по регистрам сведений. Устраняем этот недочет. В процедуре ИзменитьРежимОбработки основной формы комментируем строку // Элементы.Настройки.Видимость = Ложь; Сохраняем обработку, открываем в режиме предприятия, ставим флаг на «Выгружать регистры сведений», выгружаем. Шаг 3. Загружаем ранее созданный файл « МД.xml» в КД3, раздел «Конфигурации» – «Загрузка структуры конфигурации» флаг « В новую версию конфигурации».

В КД3 для обмена используется «промежуточная конфигурация» (ED), загружаем и её «метаданные», которые представляют собой XML схему, файл с расширением «xsd». Взять её можно из конфигурации УТ 11 или БП 3.0.

Они одинаковы. Открываем конфигурацию, в строке поиска вводим « enter», видим в дереве Общие – XDTO-пакеты примерно такие пакеты: EnterpriseData138, EnterpriseData144 и подобные. Это версии формата 1.3 и 1.4 соответственно и 1.2, 1.1, 1.0 если есть. Правая кнопка мыши на пакете, в контекстном меню выбираем « Экспорт XML-схемы». Шаг 4. В КД3 раздел Формат данных – «Загрузка структуры формата», выбираем ранее выгруженные файлы с расширением «xsd».

Нужно выбирать один файл! Множественный выбор совместно с ExchangeMessage не нужен! Это предлагалось в старых инструкциях КД3 предыдущих версий. В последних КД3 этого не требуется. После загрузки формата в разделе Формат данных – Дерево объектов формата, выберите версию формата. Если там есть документы и справочники, значит Вы загрузили правильный файл. Если нет, начните всё сначала с новой пустой КД3 и первым делом загрузите формат и проверьте дерево.

Этап 2. После загрузки метаданных в КД3 приступаем к загрузке типовых правил обмена. Как это делается в КД2? Правила загружаются в конвертацию. В КД3 почти так же. Выгружаем правила из типовой, создаём конвертацию, а потом загружаем в неё правила. University engineering program. Выгрузка типовых правил из конфигурации для загрузки в КД3 Открываем конфигурацию БП 3.0 или УТ 11.3 в режиме конфигуратора, в строке поиска можно ввести « мен уни», открываем общий модуль МенеджерОбменаЧерезУниверсальныйФормат. Если это БП 3.0, то открываем МенеджерОбменаЧерезУниверсальныйФормат13.

В открытом модуле переходим в меню Файл – Сохранить копию, сохраняем файл с произвольны именем, например, « D: Правила БП3 БП 3.0.54.15 Общий модуль МенеджерОбменаЧерезУниверсальныйФормат Модуль». Открываем конфигурацию в режиме предприятия, открываем обработку tmplts 1c Conversion 3053 Выгрузка правил синхронизации.epf. Недостаток типовой обработки:.

часто завершается с ошибкой;. выгружает правила из внешней обработки, подключенной к узлу, а нам нужны типовые правила;. не работает в БП 3.0.53 и выше. Доработка модуля основной формы обработки. Вносим изменения в процедуры ПриСозданииНаСервере и КомпонентыОбмена, добавляем новую функцию ПолучитьВерсииФормата.

&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ВерсииФормата = ПолучитьВерсииФормата; Для Каждого ВерсияФормата ИЗ ВерсииФормата Цикл Элементы.НомерВерсииФормата.СписокВыбора.Добавить(ВерсияФормата.Ключ); КонецЦикла; КонецПроцедуры &НаСервере Функция ПолучитьВерсииФормата // подключаются типовые правила! Не задействуются внешние обработки с правилами. При загрузке правил синхронизации из файлов для УТ 11.3 появляется ошибка “ Поле объекта не обнаружено“. Причина – для ТекПКО.ИспользоватьДляПолучения=Ложь КД3 требует наличия информации по варианту идентификации при получении.

Если в файле правил этого нет, возникает ошибка. Исправляем это недоразумение. Либо снимаем эту форму с поддержки, либо используем расширение. // Основная форма обработки ЗагрузкаПравилСинхронизацииИзФайлов // До внесения изменений: // Процедура загружает правила конвертации объектов &НаСервере Процедура ЗагрузитьПКО. ЗаполнитьЗначенияСвойств(ТекПКО, СтруктураАтрибутов); // Вариант идентификации - особая логика. ТекПКО.ВариантИдентификации = Перечисления.ВариантыИдентификацииОбъектовСтруктураАтрибутов.ВариантИдентификации; ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда // Запись загруженного ПКО. // Изменения помечены '//ED' // Процедура загружает правила конвертации объектов &НаСервере Процедура ЗагрузитьПКО.

ЗаполнитьЗначенияСвойств(ТекПКО, СтруктураАтрибутов); // Вариант идентификации - особая логика. Если ТекПКО.ИспользоватьДляПолучения Тогда //ED ТекПКО.ВариантИдентификации = Перечисления.ВариантыИдентификацииОбъектовСтруктураАтрибутов.ВариантИдентификации; КонецЕсли; ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда // Запись загруженного ПКО. БП 3.0.54.15. Замечена некорректная загрузка ПКО “ СправочникПользователи“. Необходимо исправить.

В ПКО “ ДокументИнвентаризацияТоваровОтправка” для ПКС “ ОтветственноеЛицо” не указано ПКО. Откройте, перевыберите свойство конфигурации и свойство формата чтобы заполнился их тип, после чего будет доступен выбор в поле “ Правило конвертации свойства“. Выберите “ СправочникФизическиеЛицаОтправка“. Рассмотрим пример доработки Основная цель примера – показать возможности доработок для переноса дополнительных данных, которые не укладываются в формат обмена. Необходимо перенести реквизит “ ВидНоменклатуры” справочника “Номенклатура”, тип реквизита “ Справочник.ВидыНоменклатуры“. Этот вид справочника не переносится типовыми правилами КД3 и не поддерживается форматом ED. Есть несколько вариантов решения подобной задачи.

Доработка XDTO пакета, добавление в формат объекта “Справочник.ВидыНоменклатуры”. В результате теряется основное преимущество универсального формата – он перестаёт быть универсальным. Доработка XDTO пакета потребуется во всех базах, участвующих в обмене. Использовать свойство формата “ ДополнительныеРеквизиты“, которое есть во многих объектах. Этот вариант рассматривать в данной статье не будем ввиду некоторой сложности. Примем к сведению что есть такой способ. Реквизит AdditionalInfo.

Он присутствует в шапке всех объектов формата. Предназначен для подобных случаев. Воспользуемся им как самым простым способом. Перед тем как приступить к доработке типовых правил, создадим в группе правил две группы « Добавлено», « Изменено». Это делается в “ Конвертации – “. Новые ПОД, ПКО, Алгоритмы и т.п. Будем создавать в группе «Добавлено», типовые объекты, в которые вносим изменения, переносим в группу «Изменено».

Это облегчит последующую поддержку изменённых правил. Изменения правил в УТ 11.3 В КД3 в форме « УТ 11.3.4.12 Настройка правил обмена» на вкладке Алгоритмы создаём новый алгоритм. Имя алгоритма «AdditionalInfoВставить». Группа: “Добавлено” Параметры: «ДанныеXDTO, Имя, ДопЗначение».

С конвертация данных 1 1.0

Если ДанныеXDTO.Свойство('AdditionalInfo') И ТипЗнч(ДанныеXDTO.AdditionalInfo)=Тип('Структура') Тогда ДопДанные = ДанныеXDTO.AdditionalInfo; Иначе ДопДанные = Новый Структура; КонецЕсли; ДопДанные.Вставить(Имя, ДопЗначение); ДанныеXDTO.Вставить('AdditionalInfo', ДопДанные); Сохраняем алгоритм и переходим на вкладку « Правила конвертации объектов» По кнопке « Найти» ищем «Номенклатура», открываем ПКО « СправочникНоменклатураОтправка». Переходим на вкладку « При отправке».

Там видим поле «Имя обработчика:» « ПКОСправочникНоменклатураОтправкаПриОтправкеДанных». Можно прямо туда внести изменения.

Более сложный код, требующий отладки можно писать в конфигурации. Ищем в модуле обмена в УТ 11.3 процедуру с именем « ПКОСправочникНоменклатураОтправкаПриОтправкеДанных» и дорабатывать там. Для переноса изменений из УТ 11.3 в КД3 копируем всю процедуру в буфер обмена, в КД3 в форме « Настройка правил обмена» нажимаем кнопку « Загрузка обработчиков». Если ЗначениеЗаполнено(ДанныеИБ.ВидНоменклатуры) Тогда //ED AdditionalInfoВставить(ДанныеXDTO, 'ВидНоменклатуры', Строка(ДанныеИБ.ВидНоменклатуры.УникальныйИдентификатор)); AdditionalInfoВставить(ДанныеXDTO, 'ВидНоменклатурыНаименование', ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеИБ.ВидНоменклатуры, 'Наименование')); // AdditionalInfoВставить. //добавляем другие служебные реквизиты КонецЕсли; После переноса изменений в КД3 нажимаем кнопку “ Сохранить модуль менеджера обмена” и переносим код из буфера в модуль УТ 11.3. Изменения правил в БП 3.0 Вносим изменения в ПКО “ СправочникНоменклатураПолучение“, на вкладке “ При конвертации данных XDTO“, имя процедуры “ ПКОСправочникНоменклатураПолучениеПриКонвертацииДанныхXDTO“. В БП 3.0.52 и выше по неизвестным причинам внешняя обработка с правилами не используется.

Интерфейс для подключения обработки остался. Хотя бы на этом спасибо. Задействовать обработку с правилами можно с помощью расширения. Необходимо внести исправление в общий модуль “ ОбменДаннымиXDTOСервер“, функцию “ ВерсииФорматаОбмена“. Процедура ПолучитьВерсииФорматаОбмена(ВерсииФормата) Экспорт. ИмяОбработки = Выборка.ПутьКМенеджеруОбмена; Если НЕ ОбщегоНазначенияКлиентСервер.РежимОтладки Тогда //Добавлено ДанныеОбработки = Новый ДвоичныеДанные(ИмяОбработки); АдресОбработки = ПоместитьВоВременноеХранилище(ДанныеОбработки); Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий Тогда ИмяОбработки = ВнешниеОбработки.Подключить(АдресОбработки, ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений); Иначе ИмяОбработки = ВнешниеОбработки.Подключить(АдресОбработки); КонецЕсли; КонецЕсли; МенеджерОбмена = ВнешниеОбработки.Создать(ИмяОбработки). Отладку проще всего вести в файловой базе.

Точку останова ставим в обработке с правилами. Чтобы найти нужную процедуру, используем КД3. Находим ПКО, ПОД или Алгоритм, смотрим “ Имя обработчика” или “ Имя алгоритма“, ищем эту процедуру в модуле правил. После правки модуля не забываем скопировать процедуру в буфер и в КД3 нажать кнопку “ Загрузка обработчиков“. Будьте внимательны, должна быть открыта эта же конвертация. Данной информации для программиста 1С уже достаточно чтобы самостоятельно освоить КД3 и поддерживать в рабочем состоянии современный способ синхронизации между базами 1С. Если остались белые пятна, спрашивайте, статья будет дополняться и Вы можете вернуться к ней если что-то забыли.

Общеизвестные ссылки на документацию по КД3:. 1С:. ИТС:. Помощник быстрого освоения – открывается в КД3 Курсы по КД3. Курсы-по-1с. “КОНВЕРТАЦИЯ ДАННЫХ 3.0” Насипов Фарит и Евгений Гилев, ООО “ОдинКурс” –.

1С-Учебный центр №3, “Конвертация данных 3.0” – Расширить сферу применения КД3 Вы можете используя эти публикации:. – конфигурации предыдущих версий на платформе 8.2 и ниже превращаются в совместимые с ED. – аналогичные конфигурации для Казахстана.

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

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

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

Потом создаем второе ПКО. Источник - оставляем пустым. Приемник название документа в который переносим сведения.

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

Теперь так как источника у второго правила ПКО у тебя нету, нужно передать туда данные для формирования. Для этого в первом ПКО пишем в обработчике 'После загрузки в файл' следующее: ВыгрузитьПоПравилу(Источник,'Имя ПКО выгрузки номенклатуры'); Все готово. Теперь при загрузке спр. Номенклатура будет автоматический формироваться нужный тебе документ. Сначала загрузи в конвертацию структуры метаданных той и той конфигурации.

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

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

Теперь так как источника у второго правила ПКО у тебя нету, нужно передать туда данные для формирования. Для этого в первом ПКО пишем в обработчике 'После загрузки в файл' следующее: ВыгрузитьПоПравилу(Источник,'Имя ПКО выгрузки номенклатуры'); Все готово. Теперь при загрузке спр. Номенклатура будет автоматический формироваться нужный тебе документ.