Как настроить план обмена в РИБ и добавить нетиповые объекты?

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

При работе с распределенными информационными базами (РИБ) в 1С часто возникает задача скорректировать состав передаваемых данных: добавить новые созданные справочники и документы либо, наоборот, исключить определенные документы из миграции между узлами. Разберем подробно, как устроен механизм планов обмена, почему данные могут не попадать в подчиненный узел и как правильно настроить передачу нетиповых объектов.

Выясним причину: разница между полным обменом и обменом с фильтрацией

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

  1. Полный план обмена: для большинства объектов метаданных свойство Авторегистрация установлено в значение Разрешить. Это означает, что любое создание или изменение объекта автоматически фиксируется платформой для всех подчиненных узлов.
  2. План обмена с отбором (по организации): для большинства объектов свойство Авторегистрация установлено в значение Запретить. В таких обменах регистрацией управляют подписки на события и встроенные Правила регистрации объектов (ПРО) Библиотеки стандартных подсистем (БСП). Система проверяет, к какой организации относится документ или справочник, и ставит его в очередь выгрузки только для соответствующего узла.

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

Пошаговая настройка: добавление нетипового объекта в обмен

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

  1. Включение объекта в состав плана обмена:

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

  2. Настройка авторегистрации:

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

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

  3. Обновление конфигурации подчиненных узлов:

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

Исключение документов из синхронизации

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

  1. Полный запрет миграции:

    В конфигураторе в составе плана обмена снимем флажок с ненужного документа либо переведем свойство Авторегистрация в значение Запретить (и исключим документ из состава регистрирующих подписок на события).

  2. Условное исключение:

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

Первичная регистрация данных для созданного узла

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

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


УзелОбмена = ПланыОбмена.ПоОрганизации.НайтиПоКоду("002");
Если ЗначениеЗаполнено(УзелОбмена) Тогда
    // Регистрируем все элементы нетипового справочника для указанного узла
    ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, Метаданные.Справочники.НетиповойСправочник);
КонецЕсли;

Особенности создания начального образа РИБ

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

  1. Размещение файла образа: При создании файлового образа .1CD платформа сохраняет базу в каталог, указанный на финальном шаге мастера создания образа. Файл формируется непосредственно в этой папке.
  2. Полнота данных: В начальный образ выгружаются только те данные, которые соответствуют настройкам фильтрации выбранного узла на момент создания. Если реквизит организации в шапке узла не был заполнен, связанные данные и зависимые договоры не попадут в создаваемую базу.
← На главную