Как настроить синхронизацию между двумя одинаковыми базами 1С:Бухгалтерия 3.0 через универсальный формат и исправить ошибку неуникальности кода узла?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При настройке типовой синхронизации данных через универсальный формат (EnterpriseData) между двумя базами одной конфигурации — например, двумя 1С:Бухгалтерия предприятия 3.0 — специалисты часто сталкиваются с ошибкой контроля уникальности: система сообщает о неуникальности кода узла плана обмена и блокирует создание настройки. Разберем причины возникновения этой ошибки, методы её устранения без снятия конфигурации с поддержки, а также особенности работы универсального формата между идентичными базами.

Причины возникновения ошибки неуникальности кода узла

Проанализируем механику работы планов обмена в типовых конфигурациях на базе Библиотеки стандартных подсистем (БСП):

  1. Копирование информационной базы. Если база-приемник создавалась простым копированием базы-источника, в ней полностью дублируются идентификаторы и коды предопределенного узла ЭтотУзел плана обмена СинхронизацияДанныхЧерезУниверсальныйФормат (по умолчанию часто имеет код «БП» или пустой код).
  2. Механизм создания настройки обмена. При добавлении синхронизации через пункт «Другая программа» мастер создания обмена пытается создать новый узел с кодом базы-корреспондента. Если этот код совпадает с кодом собственного предопределенного узла текущей базы, платформа 1С выдает ошибку нарушения уникальности кода.
  3. Несинхронизированность константы префикса. Изменение префикса в пользовательском интерфейсе через константу Префикс информационной базы не всегда автоматически перезаписывает реквизит Код у существующего предопределенного элемента плана обмена.

Способ 1. Программное изменение кода узла через внешнюю обработку

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


УзелСсылка = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.ЭтотУзел();
УзелОбъект = УзелСсылка.ПолучитьОбъект();
УзелОбъект.Код = "Б2"; // Задаем уникальный префикс второй базы
УзелОбъект.Наименование = "Бухгалтерия предприятия (копия)";
УзелОбъект.Записать();

Выполним данный код в базе-приемнике. После изменения кода узла перезапустим мастер настройки синхронизации данных.

Способ 2. Изменение реквизитов через стандартные сервисные инструменты БСП

Если нет возможности запускать внешние обработки, воспользуемся штатным инструментом Групповое изменение реквизитов:

  1. Перейдем в раздел Администрирование — Обслуживание — Корректировка данных — Групповое изменение реквизитов.
  2. Нажмем кнопку Дополнительные параметры и установим флажки Показывать служебные реквизиты и Режим разработчика.
  3. В поле выбора элементов найдем план обмена Синхронизация данных через универсальный формат.
  4. Выберем предопределенный узел и изменим значение реквизита Код на уникальный двухсимвольный префикс (например, Б2).
  5. Сохраним изменения.

После смены префикса базы рекомендуется выполнить запуск информационной базы в режиме «1С:Предприятие» с ключом командной строки:


1cv8.exe ENTERPRISE /F"C:\Bases\BP_Copy" /C ЗапуститьОбновлениеИнформационнойБазы

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

Пошаговый порядок настройки обмена «БП 3.0 — БП 3.0»

Разберем по шагам правильную последовательность действий для связывания двух конфигураций:

  1. Установка разных префиксов: в первой базе установим префикс (например, Б1), во второй базе — Б2 (раздел Администрирование — Синхронизация данных).
  2. Проверка кодов узлов: убедимся, что у предопределенных узлов ЭтотУзел коды соответствуют префиксам (Б1 и Б2).
  3. Создание настройки в базе-источнике: выберем вариант Синхронизация данных через универсальный формат — Другая программа. Укажем префикс второй базы (Б2) и выгрузим файл настроек обмена.
  4. Создание настройки в базе-приемнике: загрузим файл настроек из первой базы, выберем существующую настройку и завершим инициализацию подключения (через общий каталог, сетевую папку или FTP).

Ограничения универсального формата при синхронизации одинаковых баз

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

  1. Отсутствие проводок в пакете обмена. Универсальный формат передает только документы и справочники, но не переносит сформированные движения по регистрам бухгалтерии. При загрузке в базу-приемник документы проводятся заново. Если в базах отличаются параметры учетной политики или настройки счетов учета номенклатуры, результат проведения документов может отличаться.
  2. Ограниченный состав объектов. Формат EnterpriseData предназначен для интеграции разнородных систем. Ряд специфических бухгалтерских объектов (ручные операции ОперацияБух, специфические регистры сведений, константы) стандартными правилами обмена не переносятся.
  3. Сквозная нумерация. После изменения префикса базы новые документы, созданные непосредственно в этой базе, начнут получать номера с новым префиксом, что важно учитывать при ведении оперативного учета.
← На главную