При организации обмена между конфигурациями 1С разработчики часто сталкиваются с вопросом выбора инструмента: использовать классическую «Конвертацию данных 2.0» (КД 2) или перейти на современную «Конвертацию данных 3.0» (КД 3), работающую через универсальный формат EnterpriseData. Разберем ключевые различия этих подходов, выясним правила согласования версий формата и проанализируем, как устранять ошибки в типовых правилах конвертации.
Распространенное заблуждение заключается в том, что КД 2 предназначена исключительно для разовых выгрузок, а КД 3 — только для регулярного фонового обмена. На практике обе технологии поддерживают как периодический регулярный обмен по планам обмена, так и разовый перенос информации. Разница кроется в архитектуре передачи данных:
В КД 2 правила конвертации создаются для конкретной пары баз данных («Источник → Приемник»). Логика трансформации полностью содержится в одном XML-файле правил. Источник напрямую знает метаданные приемника. Этот подход дает практически неограниченные возможности: перенос любых нетиповых регистров, реквизитов, движений документов без проведения. Однако если структура метаданных в любой из баз меняется при обновлении, единые правила обмена могут перестать работать.
В КД 3 обмен строится по двухэтапной схеме через единый канонический формат: на стороне базы-источника данные преобразуются в XDTO-пакет формата EnterpriseData (Объект источника → Объект формата), а на стороне базы-приемника формат преобразуется во внутренние метаданные (Объект формата → Объект приемника). Каждая конфигурация содержит свой независимый комплект правил и ничего не знает о структуре другой программы. Это позволяет обновлять одну базу независимо от другой без поломки синхронизации.
Для связок современных типовых конфигураций (например, Бухгалтерия предприятия 3.0 и Управление торговлей 11) штатным механизмом является КД 3. Инструмент КД 2 остается актуальным для переноса данных между сильно кастомизированными или устаревшими конфигурациями (например, УПП 1.3, УТ 10.3), а также для сложных разовых переносов остатков и документов с сохранением специфических движений.
Формат EnterpriseData развивается параллельно с развитием типовых конфигураций. Версии формата нумеруются по принципу Мажорная.Минорная.Ревизия (например, 1.3.2, 1.3.4, 1.5.1). Разберем правила их взаимодействия при синхронизации:
1.3.2, а вторая — 1.3.4, они работают корректно. Обе конфигурации используют ветку 1.3, в которой поддерживается обратная совместимость ревизий.1.0, 1.1, 1.2, 1.3). При первой настройке синхронизации программы согласуют максимальную общую поддерживаемую версию формата. Если База 1 умеет работать с форматами до 1.2, а База 2 — до 1.3, то сеанс обмена будет автоматически происходить по общему формату 1.2.Если в процессе обмена одна из баз не обновлялась долгое время и не поддерживает версию формата, запрашиваемую обновленной базой, обмен будет использовать минимальный взаимно доступный формат.
Когда штатная синхронизация между типовыми конфигурациями завершается ошибками в правилах конвертации объектов (ПКО) или правилах обработки данных (ПОД), причинами чаще всего являются:
<Объект не найден>) в составе зарегистрированных к выгрузке данных приводит к исключениям в обработчиках выборки данных.Для исправления ошибок и внесения доработок в типовой обмен EnterpriseData используются следующие подходы:
МенеджерОбменаЧерезУниверсальныйФормат. С помощью расширений можно переопределять обработчики событий (например, ПКО_..._ПриОтправкеДанных или ПКО_..._ПриПолученииДанных) с директивами &Вместо, &После или &Перед без изменения типовой конфигурации.ПРО) можно отредактировать в базе КД 3, выгрузить в XML-файлы и загрузить в режиме «1С:Предприятие» через форму настройки синхронизации данных.Регистрация изменений для обмена данными можно удалить зависшие ошибочные объекты из очереди отправки узла плана обмена и протестировать выгрузку конкретных документов по отдельности.