К статье
Практический материал

Автоматизация · 12 мин

Как настроить правила обмена 1С: практическое руководство

Как настроить правила обмена 1С: Конвертация данных 2.1 и 3.0, ПКО, ПКС, выгрузка и загрузка правил, типичные ошибки и проверка результата.

Правила обмена в 1С определяют, какие объекты и по какой логике переносятся между конфигурациями: из «Управления торговлей» в «Бухгалтерию», из «ЗУП» в «Бухгалтерию» или между одинаковыми базами в распределённой сети. Без корректных правил обмен либо не запускается, либо создаёт дубли справочников и документов, разбирать которые потом приходится вручную.

Существуют два основных подхода: типовые правила, поставляемые вместе с конфигурацией, и собственные правила, созданные в конфигурации «Конвертация данных». Типовые правила подходят для стандартного обмена между неизменёнными конфигурациями. Как только в базе появляются доработки — новые реквизиты, документы, справочники — правила приходится дорабатывать или писать заново.

Настройка правил — это работа на стыке учёта и разработки. Ошибка в правиле конвертации свойств может привести к потере данных при выгрузке или к некорректным проводкам в базе-приёмнике. Поэтому любые изменения правил сначала тестируют на копиях баз, а не на рабочих данных.

Какие механизмы обмена существуют в 1С и что выбрать

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

Конвертация данных 2.1 — классический механизм. Правила хранятся в XML-файле, редактируются в отдельной конфигурации «Конвертация данных, редакция 2.1». Обмен выполняется через универсальный формат выгрузки или обработку «Универсальный обмен данными в формате XML».

Конвертация данных 3.0 (EnterpriseData) — современный формат обмена через универсальные XML-документы. Правила здесь — это не XML-файл, а встроенный код обработчиков, поставляемый в составе конфигурации или подключаемый как внешняя обработка. Используется в обмене между УТ 11, ERP, БП 3.0 и другими актуальными конфигурациями.

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

Сравнение механизмов обмена

Конвертация данных 2.1

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

Конвертация данных 3.0

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

Типовые правила без изменений

Оптимально, если обе конфигурации без доработок. Ничего настраивать не нужно — достаточно настроить сам узел обмена.

Где хранятся и как подключаются правила обмена

В типовых конфигурациях правила обмена встроены в саму конфигурацию и подключаются автоматически при создании узла обмена. Найти их можно через раздел администрирования: «Администрирование → Синхронизация данных → Настройки синхронизации данных». Для каждого узла указывается, используются ли типовые правила или загруженные из файла.

Чтобы подключить собственные правила формата КД 2.1, откройте настройку синхронизации, перейдите в параметры правил обмена и выберите вариант «Загрузить правила из файла». Файл правил должен быть заранее выгружен из конфигурации «Конвертация данных» в формате XML.

В формате EnterpriseData (КД 3.0) правила поставляются как модуль менеджера обмена. Доработанные правила подключаются через внешнюю обработку, которую указывают в настройках синхронизации. Самостоятельно редактировать типовой модуль менеджера обмена не стоит — при обновлении конфигурации изменения будут потеряны.

Создание правил в Конвертации данных 2.1

Конфигурация «Конвертация данных, редакция 2.1» распространяется бесплатно и устанавливается как отдельная информационная база. Работа начинается с загрузки структур метаданных обеих конфигураций — источника и приёмника. Структуры выгружаются обработкой MD83Exp.epf (для обычных форм) или аналогичной для управляемого приложения.

После загрузки структур создаётся новая конвертация, где указываются конфигурация-источник и конфигурация-приёмник. Дальше настраиваются три уровня правил.

Правила конвертации объектов (ПКО)

ПКО определяет соответствие между объектом источника и объектом приёмника: например, документ «Реализация товаров и услуг» из УТ превращается в «Реализацию (акт, накладную)» в БП. В ПКО задаётся способ поиска объекта в приёмнике — по уникальному идентификатору, по полям поиска (номер и дата документа, код и наименование справочника) или комбинированно. От правильного поиска зависит, будут ли создаваться дубли.

Правила конвертации свойств (ПКС)

ПКС задаёт соответствие реквизитов: какое поле источника в какое поле приёмника переносится. Для простых реквизитов достаточно прямого соответствия. Если типы не совпадают или нужна трансформация (например, склеить несколько полей в одно), используется обработчик «Перед выгрузкой» с кодом на встроенном языке.

Обработчики событий

Для нестандартной логики используются события: «Перед выгрузкой данных», «Перед выгрузкой объекта», «После загрузки объекта» и другие. В них пишется код, который может отказать в выгрузке объекта, изменить значения или заполнить реквизиты приёмника по алгоритму.

Порядок создания правил в КД 2.1
  1. 1
    Выгрузите структуры метаданных обеих конфигураций обработкой выгрузки описания структуры
  2. 2
    Загрузите обе структуры в базу «Конвертация данных»
  3. 3
    Создайте новую конвертацию и укажите источник и приёмник
  4. 4
    Настройте ПКО для каждого переносимого объекта, задайте поля поиска
  5. 5
    Настройте ПКС для реквизитов каждого объекта
  6. 6
    Добавьте обработчики событий там, где нужна нестандартная логика
  7. 7
    Выгрузите правила в XML-файл и протестируйте на копиях баз

Настройка обмена через EnterpriseData (КД 3.0)

В современных конфигурациях (УТ 11, КА 2, ERP 2, БП 3.0, ЗУП 3.1) обмен работает через формат EnterpriseData. Правила здесь — это программный код в общем модуле менеджера обмена, например «МенеджерОбменаЧерезУниверсальныйФормат». Код описывает правила конвертации объектов, свойств и обработчики в виде процедур.

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

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

Самая частая причина доработки обмена — добавленный в конфигурацию реквизит. В КД 3.0 достаточно добавить одно правило конвертации свойства в доработанный модуль обмена, не трогая остальные правила. Проверяйте, что реквизит добавлен в обеих конфигурациях, иначе значение просто негде будет хранить.
ПЗ
Практическое замечание

Настройка узла обмена и регистрации изменений

Правила — только половина задачи. Вторая половина — корректная настройка плана обмена. В разделе «Синхронизация данных» создаётся новая настройка, выбирается программа-корреспондент, указывается способ транспорта: прямое подключение, каталог, FTP, электронная почта или веб-сервис.

На этапе начальной настройки выполняется первичная выгрузка данных — в базу-приёмник переносятся справочники и остатки. Затем включается регистрация изменений: план обмена начинает отслеживать новые и изменённые объекты и отправлять только их. Если регистрация не работает, каждый сеанс обмена будет переносить все данные заново, что резко замедляет синхронизацию.

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

Контрольные точки

Как проверить результат настройки

Первичная синхронизация
Норма

Справочники и документы перенесены, количество объектов в отчёте о сопоставлении совпадает с ожиданиями

Тревожный признак

Объекты не переносятся или создаются дубли справочников

Регистрация изменений
Норма

После изменения документа он попадает в очередь на отправку и переносится при следующем сеансе

Тревожный признак

Изменения не регистрируются или переносятся все данные подряд

Поиск объектов
Норма

Повторная выгрузка обновляет существующие объекты, а не создаёт новые

Тревожный признак

При каждом обмене появляются дубли контрагентов или номенклатуры

Типичные ошибки при настройке правил обмена

Большинство проблем обмена сводится к нескольким повторяющимся причинам. Дубли справочников возникают, когда в ПКО не настроен поиск по полям или объект ищется только по уникальному идентификатору, а базы создавались независимо. Решение — добавить поля поиска: код, наименование, ИНН и КПП для контрагентов.

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

Незаполненные реквизиты в приёмнике — следствие отсутствующего ПКС или обработчика, который очищает значение. Проверяйте правила конвертации свойств для проблемного объекта и отладку обработчиков.

Типичные ошибки
01
Редактирование типовых правил внутри конфигурации — изменения теряются при обновлении; используйте внешнюю обработку правил
02
Тестирование новых правил сразу на рабочей базе — ошибка в правиле может испортить данные приёмника; проверяйте на копиях
03
Поиск объектов только по GUID — при обмене между независимо созданными базами возникают дубли; добавляйте поля поиска
04
Обмен без сопоставления объектов на старте — первичная выгрузка создаёт дубли справочников, которые потом трудно разобрать
05
Отключённая регистрация изменений — каждый сеанс переносит весь объём данных, обмен занимает часы

Когда стоит привлечь специалиста

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

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

Итог

Что важно запомнить

Типовой обмен работает на встроенных правилах и не требует настройки правил — только настройки узла. Доработки выполняются в Конвертации данных 2.1 (XML-правила) или через внешний модуль обмена в формате EnterpriseData. Ключ к отсутствию дублей — правильные поля поиска в ПКО. Любые изменения правил тестируются на копиях баз с обязательной резервной копией.

Частые вопросы о настройке правил обмена 1С

Можно ли настроить обмен без конфигурации «Конвертация данных»?

Да, если используются типовые правила между стандартными конфигурациями — они уже встроены. «Конвертация данных» нужна только для создания или изменения правил. Для формата EnterpriseData доработка выполняется прямо в конфигураторе через внешнюю обработку с модулем менеджера обмена.

Почему после обмена появляются дубли контрагентов и номенклатуры?

Причина почти всегда в правилах поиска: объект ищется только по уникальному идентификатору, который в разных базах разный. Добавьте в ПКО поиск по реквизитам — для контрагентов это ИНН и КПП, для номенклатуры — код или наименование с артикулом. Существующие дубли придётся объединять вручную обработкой поиска и замены дублей.

Что произойдёт с правилами при обновлении конфигурации?

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

Как выгрузить только часть документов, а не все подряд?

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

Чем отличается синхронизация от универсального обмена данными?

Синхронизация через план обмена — регулярный автоматический процесс с регистрацией изменений и расписанием. Универсальный обмен (обработка «Универсальный обмен данными в формате XML») — разовая ручная выгрузка по произвольным правилам, например для миграции данных при переходе на новую конфигурацию.

Обмен работает, но часть реквизитов в приёмнике пустая. Что проверить?

Откройте правила конвертации свойств для проблемного объекта и убедитесь, что для нужного реквизита создано ПКС. Проверьте, нет ли обработчика, который очищает значение, и существует ли сам реквизит в конфигурации-приёмнике. Также посмотрите протокол обмена — ошибки конвертации свойств фиксируются там.