Администрирование · 11 мин
Как сделать план обмена в 1С: подробное руководство
Как создать и настроить план обмена в 1С: типовые и собственные планы, регистрация изменений, узлы, настройка синхронизации и типичные ошибки.
План обмена — это объект конфигурации 1С, который определяет, какие данные и между какими базами будут синхронизироваться. Без корректно настроенного плана обмена невозможно организовать ни распределённую базу, ни регулярную выгрузку данных в другую учётную систему, ни синхронизацию с сайтом или мобильным приложением.
В типовых конфигурациях (УТ, ERP, БП, ЗУП) планы обмена уже созданы разработчиками: «Полный», «По организации», «Синхронизация данных через универсальный формат» и другие. Задача администратора — выбрать подходящий план, создать узлы и настроить правила. Если типовые механизмы не закрывают задачу, план обмена создаётся в конфигураторе вручную.
Материал охватывает оба сценария: работу с готовыми планами обмена в пользовательском режиме и создание собственного плана в конфигураторе с разбором состава, регистрации изменений и типичных ошибок.
Когда нужен план обмена и какой вариант выбрать
План обмена применяется в трёх типовых ситуациях. Первая — распределённая информационная база (РИБ): центральный узел и периферийные базы для филиалов или удалённых точек с нестабильной связью. Вторая — синхронизация между разными конфигурациями, например выгрузка документов из УТ в БП. Третья — интеграция с внешними системами: сайтами, CRM, мобильными клиентами.
Выбор между типовым и собственным планом зависит от задачи. Если нужно синхронизировать типовые конфигурации в стандартном составе — используйте готовый план обмена «Синхронизация данных через универсальный формат» (EnterpriseData) или специализированные пары вроде «УТ — БП». Если требуется нестандартный состав данных, фильтрация по условиям или обмен с самописной конфигурацией — создавайте собственный план в конфигураторе.
Сравнение подходов
Подходит для стандартной синхронизации типовых конфигураций. Настраивается без программирования, но состав данных фиксирован правилами поставщика.
Гибкая настройка состава и конвертации через «Конвертацию данных». Требует навыков разработки и тестирования правил.
Для идентичных баз-филиалов с передачей всех данных и изменений конфигурации. Не подходит для обмена между разными конфигурациями.
Настройка типового плана обмена в режиме «Предприятие»
В типовых конфигурациях настройка начинается с включения функциональности. Откройте раздел «Администрирование» → «Синхронизация данных» (в некоторых конфигурациях — «НСИ и администрирование») и установите флаг «Синхронизация данных». После этого станет доступен список настроек синхронизации.
Нажмите «Настроить синхронизацию данных» и выберите нужный план обмена из списка — например, «Бухгалтерия предприятия» для обмена с БП. Мастер настройки предложит указать способ подключения: прямое подключение к базе через сеть, обмен через каталог, FTP или веб-сервис. Для первой настройки надёжнее всего обмен через файловый каталог — его проще диагностировать.
Далее задайте префикс узла (уникальный код базы, например «УТ» и «БП»), дату начала выгрузки и при необходимости отборы: по организациям, складам, подразделениям. Завершите работу мастера — система создаст узел обмена и сформирует начальный образ данных для второй базы.
- 1Включите «Синхронизацию данных» в настройках администрирования
- 2Создайте настройку синхронизации и выберите план обмена
- 3Укажите способ транспорта: каталог, FTP, прямое подключение
- 4Задайте префиксы узлов и дату начала выгрузки
- 5Настройте отборы по организациям и другим разрезам
- 6Выгрузите начальный образ и загрузите его во вторую базу
- 7Выполните тестовый обмен и проверьте сопоставление объектов
Создание собственного плана обмена в конфигураторе
Если типовых средств недостаточно, план обмена создаётся как объект метаданных. Откройте конфигуратор, в дереве конфигурации найдите ветку «Общие» → «Планы обмена» и добавьте новый объект. Задайте имя, например «ОбменССайтом», и синоним для отображения пользователям.
Ключевой шаг — определение состава плана обмена. На закладке «Основные» (кнопка «Состав») отметьте объекты метаданных, которые будут участвовать в обмене: справочники «Номенклатура», «Контрагенты», документы «Реализация товаров и услуг» и так далее. Для каждого объекта выберите режим авторегистрации: «Разрешить» — платформа сама будет фиксировать изменения, или «Запретить» — если регистрацию будете выполнять программно.
Для распределённой базы дополнительно установите свойство «Распределённая информационная база». Для обычного обмена между разными конфигурациями этот флаг не нужен — вместо него используются правила конвертации.
Создание узлов и регистрация изменений
После создания плана обмена в конфигураторе нужно создать узлы — конкретные базы-участники обмена. В режиме «Предприятие» откройте список плана обмена и добавьте элементы: узел «Эта база» (предопределённый) и узлы корреспондентов. Каждому узлу присвойте уникальный код — именно по коду платформа определяет, какие сообщения кому адресованы.
Регистрация изменений работает так: при записи объекта, входящего в состав плана, платформа создаёт запись регистрации для каждого узла. При формировании сообщения обмена (выгрузки) эти изменения попадают в файл, а регистрация снимается. Программно зарегистрировать объект можно методом ПланыОбмена.ЗарегистрироватьИзменения(), а выгрузку выполнить через ПланыОбмена.СоздатьЗаписьСообщения().
Узел = ПланыОбмена.ОбменССайтом.НайтиПоКоду("WWW");
ПланыОбмена.ЗарегистрироватьИзменения(Узел, НоменклатураСсылка);
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл("C:\Exchange\out.xml");
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, Узел);
ПланыОбмена.ЗаписатьИзменения(ЗаписьСообщения, 1000);
ЗаписьСообщения.ЗакончитьЗапись();
ЗаписьXML.Закрыть();Для массовой первоначальной регистрации всех данных удобно использовать типовую обработку «Регистрация изменений для обмена данными» — она доступна в составе подсистемы обмена БСП и позволяет зарегистрировать объекты по отбору без написания кода.
Настройка правил конвертации для разных конфигураций
Когда обмен идёт между различными конфигурациями (или структуры объектов отличаются), одного плана обмена недостаточно — нужны правила конвертации данных. Они описывают, как объект источника преобразуется в объект приёмника: соответствие реквизитов, алгоритмы поиска, обработчики событий.
Правила разрабатываются в конфигурации «Конвертация данных» (редакция 2 или 3 в зависимости от формата обмена). Для универсального формата EnterpriseData правила обычно уже встроены в типовые конфигурации, и доработка выполняется через внешние правила, подключаемые в настройке синхронизации. Для собственного плана обмена правила загружаются файлом формата XML.
Практическая рекомендация: начинайте с минимального состава — один справочник и один документ. Добейтесь корректной выгрузки и загрузки, сопоставления объектов без дублей, а затем расширяйте правила. Отладка большого комплекта правил с нуля занимает в разы больше времени.
Проверка результата и типичные ошибки
После настройки выполните контрольный цикл: измените тестовый объект в первой базе, выполните выгрузку, загрузите данные во второй базе и убедитесь, что объект появился с корректными реквизитами. Проверьте журнал регистрации на наличие ошибок обмена и посмотрите очередь регистрации изменений — после успешной выгрузки она должна очищаться.
Как проверить результат
После выгрузки изменения сняты с регистрации
Изменения копятся — узел не получает подтверждение или выгрузка падает
Контрагенты и номенклатура связаны по ГУИД или ключам поиска
В приёмнике появляются дубли элементов
События обмена без ошибок
Ошибки записи, коллизии, отказ по правам
Ограничения и меры предосторожности
Любые эксперименты с планами обмена выполняйте на копии базы. Ошибочная настройка может привести к потере данных при загрузке, массовым дублям справочников и блокировкам при больших объёмах регистрации. Перед первым обменом в рабочей базе сделайте резервную копию обеих баз-участников.
Учитывайте ограничения платформы: план обмена не переносит данные, не входящие в его состав; при РИБ изменения конфигурации распространяются только от главного узла к периферийным; объём сообщения обмена ограничен производительностью — при больших базах настраивайте порционную выгрузку и расписание в нерабочие часы.
Что важно запомнить
Для стандартных задач используйте типовые планы обмена и мастер настройки синхронизации. Собственный план создаётся в конфигураторе: состав объектов, узлы с уникальными кодами, регистрация изменений. Обязательно тестируйте обмен на копиях и контролируйте сопоставление объектов, чтобы избежать дублей.
Часто задаваемые вопросы
Чем план обмена отличается от правил обмена?
План обмена определяет состав данных и узлы-участники, а также механизм регистрации изменений. Правила обмена (конвертации) описывают, как именно объект одной конфигурации преобразуется в объект другой. Для обмена между идентичными базами (РИБ) правила не нужны, для обмена между разными конфигурациями — обязательны.
Можно ли изменить состав типового плана обмена?
Технически да, но это доработка конфигурации, которая снимает объект с полной поддержки и усложняет обновления. Безопасная альтернатива — использовать отборы в настройке синхронизации или расширение конфигурации, если платформа и подсистема обмена это позволяют.
Почему изменения не уходят в другую базу?
Чаще всего объект не входит в состав плана обмена, авторегистрация запрещена, а программная регистрация не выполнена, либо выгрузка выполняется не для того узла. Проверьте состав плана, очередь регистрации изменений по нужному узлу и код узла в настройке обмена.
Как избежать дублей справочников при первом обмене?
Перед регулярным обменом выполните начальную выгрузку и сопоставление объектов: типовые мастера синхронизации предлагают сопоставить элементы по наименованию, ИНН, кодам. Пропуск этого шага — главная причина дублей контрагентов и номенклатуры.
Что такое коллизии в РИБ и как их разрешать?
Коллизия возникает, когда один и тот же объект изменён в главном и периферийном узле до обмена. По умолчанию приоритет у главного узла — изменения из периферийного отклоняются. Коллизии видны в журнале регистрации, и спорные объекты нужно проверять и корректировать вручную.
Нужен ли план обмена для выгрузки на сайт?
Для обмена с сайтом по стандарту CommerceML типовые конфигурации используют собственный механизм обмена с сайтом, который внутри построен на плане обмена «Обмен с сайтом». Отдельный план создавать не нужно — достаточно настроить узел обмена с сайтом в разделе интеграции.