Автоматизация · 11 мин
КД 3 в 1С: как работать с Конвертацией данных 3.0
Как работать с Конвертацией данных 3 в 1С: загрузка правил, настройка обмена через универсальный формат, типичные ошибки и проверка результатов.
Конвертация данных 3 (КД 3) — технология 1С для настройки обмена данными между конфигурациями через универсальный формат EnterpriseData. В отличие от КД 2, где правила описывались в XML-файле и загружались в типовые планы обмена, КД 3 работает через обработку формата и правила конвертации, встроенные в конфигурацию или подключённые как расширение. Это делает обмен более гибким, но требует понимания архитектуры: менеджер обмена, правила конвертации объектов (ПКО), правила конвертации свойств (ПКС) и обработчики событий.
Типичная задача, где нужна КД 3, — обмен между конфигурациями, для которых нет готовых типовых правил, либо когда типовой обмен не покрывает нужные документы и справочники. Например, выгрузка заказов из самописной конфигурации в «1С:ERP» или синхронизация контрагентов между двумя базами «Управление торговлей» с нестандартными доработками. Технология применяется и для миграции данных при переходе на новую конфигурацию.
Работа с КД 3 строится вокруг конфигурации «Конвертация данных, редакция 3», которую можно получить через портал 1С по подписке ИТС. В ней разработчик описывает структуру обмена, а результат — модуль менеджера обмена — встраивается в целевые конфигурации. Ниже разобраны практические шаги: от подготовки среды до отладки и проверки перенесённых данных.
Как устроена КД 3 и чем она отличается от КД 2
Ключевое отличие КД 3 — отказ от прямого описания «объект источника → объект приёмника» в пользу промежуточного универсального формата. Данные сначала сериализуются в XDTO-пакеты формата EnterpriseData, а на стороне приёмника разбираются и превращаются в объекты базы. Благодаря этому одну и ту же выгрузку могут читать разные конфигурации, если у них настроен разбор формата.
Место хранения правил тоже изменилось. В КД 2 правила были отдельным XML-файлом, который загружался в узел плана обмена. В КД 3 правила компилируются в программный модуль — менеджер обмена — и становятся частью конфигурации. Это повышает производительность и защищённость, но означает, что для изменения правил нужно обновлять конфигурацию или подключать расширение.
КД 2 или КД 3: что выбрать
Подходит для старых конфигураций на обычных формах и простых разовых переносов. Правила хранятся в XML-файле, легко править без обновления конфигурации. Ограничение: технология не развивается, не поддерживает универсальный формат.
Подходит для современных конфигураций на управляемых формах, обменов через EnterpriseData и интеграций с внешними системами. Требует встраивания менеджера обмена в конфигурацию, что усложняет обновление правил.
Что подготовить перед началом работы
Для работы понадобится конфигурация «Конвертация данных, редакция 3» — она распространяется по подписке ИТС и устанавливается как обычный шаблон конфигурации. Также нужны свежие версии обеих конфигураций-участников обмена, потому что КД 3 загружает их метаданные для сопоставления объектов. Если конфигурации сильно доработаны, загружайте именно те версии, которые стоят в рабочих базах, иначе правила не учтут пользовательские реквизиты.
Вторая часть подготовки — анализ задачи. Составьте список объектов, которые должны передаваться: документы, справочники, регистры сведений. Для каждого объекта определите направление (выгрузка, загрузка, двусторонний обмен) и ключевые поля для поиска при загрузке. Это избавит от переделок: в КД 3 добавление нового объекта в готовую конвертацию проще, чем исправление ошибочной логики поиска.
- 1Установите конфигурацию «Конвертация данных, редакция 3» из шаблона поставки
- 2Сохраните конфигурации обеих баз в файлы .cf для загрузки метаданных
- 3Составьте перечень объектов обмена и правила поиска для каждого
- 4Создайте резервные копии рабочих баз перед первым тестовым обменом
Как создать конвертацию и загрузить метаданные
Работа начинается с создания новой конвертации в КД 3. В карточке конвертации указывают формат обмена — обычно версию EnterpriseData, поддерживаемую обеими конфигурациями. Затем загружают структуру метаданных: сначала конфигурацию-источник, затем приёмник. КД 3 строит внутреннее описание объектов, и дальше вся настройка идёт в терминах этих метаданных.
Если конфигурация уже содержит типовой менеджер обмена (например, в «1С:ERP» или «УТ 11» есть встроенные обмены через универсальный формат), полезно загрузить существующие правила, а не создавать их с нуля. В КД 3 есть механизм загрузки правил из модуля менеджера обмена — это сохранит типовую логику и позволит дописать только недостающие объекты. Самописные правила с нуля оправданы, только когда типового обмена между конфигурациями не существует.
Настройка правил конвертации объектов и свойств
Центральный элемент настройки — правило конвертации объекта (ПКО). Оно связывает объект источника с объектом формата и объектом приёмника. Для каждого ПКО задают способ выгрузки (по ссылке, по данным) и правила поиска при загрузке: например, контрагента ищут по ИНН и КПП, документ — по номеру, дате и организации. Ошибки в правилах поиска — главная причина дублей, поэтому ключи поиска должны быть реально уникальными в обеих базах.
Внутри ПКО настраиваются правила конвертации свойств (ПКС): какое поле источника в какое поле приёмника переносится. Для простых типов достаточно прямого сопоставления, для ссылочных полей указывается ПКО соответствующего справочника. Если логика нестандартная — например, значение вычисляется из нескольких полей или зависит от условий — используют обработчики событий на встроенном языке: «Перед выгрузкой», «При выгрузке», «После загрузки».
Отдельно настраиваются правила конвертации предопределённых данных и перечислений: они сопоставляют значения по именам, поэтому имена элементов в обеих конфигурациях должны совпадать либо быть явно связаны в таблице соответствий. Пропущенное значение перечисления приведёт к ошибке загрузки всего объекта, что заметно только при разборе протокола.
Выгрузка модуля менеджера и встраивание в конфигурации
Когда правила готовы, КД 3 формирует текст модуля менеджера обмена. Этот модуль нужно поместить в обе конфигурации: обычно в общий модуль с именем вида «МенеджерОбменаЧерезУниверсальныйФормат» или в отдельный модуль, указанный в настройках плана обмена. Если конфигурации на поддержке и менять их нельзя, модуль подключают через расширение конфигурации — это штатный и безопасный путь.
После встраивания настраивают сам обмен в пользовательском режиме: создают узел плана обмена, выбирают вариант синхронизации через универсальный формат, указывают правила отправки и получения данных. Важно проверить, что в настройках узла выбрана именно ваша версия правил, а не типовая — конфигурации с несколькими встроенными обменами могут подставить не тот менеджер.
Тестирование обмена и проверка результата
Первый тест делайте на малом объёме: зарегистрируйте к обмену 5–10 объектов каждого типа и выполните выгрузку в файл. Сам файл можно открыть и проверить: это XML-пакет формата EnterpriseData, где видно, какие данные реально сериализовались. Если в пакете нет нужного объекта, проблема на стороне выгрузки — проверяйте регистрацию изменений и обработчики ПКО.
Загрузку выполняйте в копию базы с включённым протоколированием. В протоколе обмена видны отклонённые объекты и тексты ошибок: ненайденные ссылки, незаполненные обязательные реквизиты, ошибки проведения. После загрузки сверьте контрольные суммы: количество документов по типам, итоговые суммы по ключевым документам, число элементов справочников до и после. Расхождения показывают, какие ПКО требуют доработки.
Как проверить результат обмена
Совпадает с числом выгруженных, в протоколе нет отказов
Часть объектов отклонена или загрузилась с пустыми реквизитами
Контрагенты и номенклатура сопоставились с существующими элементами
Появились новые элементы с теми же ИНН или артикулами
Документы проводятся без ошибок, движения корректны
Ошибки проведения, незаполненные обязательные поля, битые ссылки
Частые проблемы и их решение
Самая частая жалоба — «объект не загружается без ошибки». Обычно причина в правилах регистрации: объект просто не попал в пакет. Проверьте состав плана обмена и отборы в правилах регистрации. Вторая типовая ситуация — циклическая отправка: объект уходит туда-обратно бесконечно. Это признак того, что загрузка создаёт изменения, которые снова регистрируются к обмену; лечится настройкой режима «не регистрировать изменения при загрузке» и корректными правилами поиска.
Производительность обмена зависит от объёма пакетов и логики обработчиков. Если обмен больших баз занимает часы, проверьте, нет ли в обработчиках запросов внутри циклов по строкам табличных частей — типичный источник тормозов. Выносите такие запросы на уровень всего пакета или используйте соответствия, заполняемые один раз за сеанс обмена.
Как выбрать действие при проблемах
FAQ: частые вопросы по КД 3
Можно ли использовать КД 3 без подписки ИТС?
Конфигурация «Конвертация данных, редакция 3» официально распространяется в составе средств разработчика по договору 1С:ИТС. Без неё правила создать не получится, но готовый менеджер обмена, встроенный в конфигурацию, работает независимо от наличия КД 3 у пользователя базы.
Чем обмен через универсальный формат лучше прямого обмена правилами КД 2?
Универсальный формат разделяет выгрузку и загрузку: источнику не нужно знать структуру приёмника. Одну выгрузку могут читать несколько разных конфигураций, а формат понимают и внешние системы. Плата за это — необходимость встраивать модуль менеджера в конфигурацию при каждом изменении правил.
Как обновить правила, если конфигурация на полной поддержке?
Используйте расширение конфигурации: добавьте в него общий модуль с новым менеджером обмена и переопределите обращение к нему. Это не нарушает поддержку основной конфигурации и позволяет обновлять правила без снятия с замка.
Почему после загрузки документы не проводятся?
Чаще всего не перенеслись данные, обязательные для проведения: табличные части, склад, договор, валюта. Проверьте ПКС табличных частей и обязательные реквизиты в приёмнике. Полезно загрузить один документ и попытаться провести его вручную — сообщение об ошибке укажет недостающее поле.
Можно ли отлаживать обработчики правил в отладчике 1С?
Да. Менеджер обмена — обычный модуль на встроенном языке. Запустите синхронизацию в отладочном сеансе файловой копии базы, поставьте точки останова в процедурах «Перед выгрузкой» или «После загрузки» нужного ПКО и проанализируйте значения переменных. Это быстрее, чем искать ошибку по протоколам.
Подходит ли КД 3 для разового переноса данных при переходе на новую конфигурацию?
Подходит, но для простого разового переноса часто рациональнее КД 2: там правила правятся без обновления конфигурации, а результат загружается обработкой «Универсальный обмен данными». КД 3 оправдана, когда приёмник работает только с универсальным форматом или перенос превратится в постоянный обмен.
Что важно запомнить
КД 3 — это создание правил обмена через универсальный формат с последующим встраиванием модуля менеджера в обе конфигурации. Ключ к стабильному обмену — правильные правила поиска объектов, тестирование на копиях баз и проверка протоколов загрузки. Изменения правил всегда проверяйте на тестовом обмене до применения в рабочей базе.