Многие разработчики при настройке обменов данными в 1С сталкиваются с путаницей: зачем нужны Планы обмена, если есть Конвертация данных, и как они должны работать вместе? Давайте разберем этот механизм по полочкам, чтобы в вашей архитектуре обмена всегда был порядок.
Для понимания процесса необходимо четко разделять два независимых этапа:
Планы обмена. В них фиксируется факт того, что объект изменился и его нужно отправить в другой узел.Конвертация данных (КД 2.0). Правила определяют, как трансформировать объект из базы-источника в базу-приемник.Частая ошибка — попытка смешать эти процессы. Помните: объект может быть зарегистрирован для обмена в Плане обмена, но если в Правилах выгрузки данных (ПВД) для него нет описания, он просто останется висеть в очереди и никуда не отправится.
Планы обмена накапливают ссылки на измененные объекты в специальных таблицах регистрации для каждого узла. Если вы не используете Правила регистрации (RegistrationRules.xml), то регистрация происходит либо автоматически при записи (в зависимости от настроек платформы), либо программно.
Правила регистрации — это мощный инструмент фильтрации. Они позволяют вам прописать логику прямо в КД 2.0, чтобы не захламлять основной код конфигурации. Например, вы можете настроить регистрацию так, чтобы документы попадали в обмен только при выполнении определенных условий, скажем, если сумма документа превышает заданный лимит или он относится к конкретной организации.
Файлы правил КД 2.0 обычно делятся на три типа:
Рассмотрим, как это выглядит на практике. В составе Плана обмена вы указываете метаданные, которые в принципе могут быть выгружены. В ПВД вы уже описываете конкретную логику обработки этих данных. Если вы создадите ПВД для справочника, которого нет в составе Плана обмена, выгрузка не сработает, так как механизм регистрации не «увидел» объект.
Часто возникает вопрос: почему отбор можно сделать в ПриЗаписи модуля объекта, в Правилах регистрации или в ПВД? Давайте проанализируем преимущества каждого подхода:
КД.Чтобы построить надежную систему обмена, придерживайтесь следующих правил:
Правила регистрации для первичного фильтра. Это избавит вас от «раздувания» таблиц регистрации ненужными данными.ПВД для детальной настройки выгрузки. Даже если вы не планируете сложные трансформации, создание ПВД полезно для отладки выгрузки в ручном режиме.ПВД.Работа с КД 2.0 требует дисциплины, но при разделении процессов регистрации и выгрузки вы получите гибкую и легко масштабируемую систему обмена, которая будет радовать вас стабильностью и простотой поддержки!