Как выполнить синхронизацию 1С, если удалены настройки синхронизации?

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

Ситуация, когда в рабочих базах 1С (например, Управление торговлей 11.4 и Бухгалтерия предприятия 3.0) внезапно пропадают настроенные узлы синхронизации, является критической. Это может произойти из-за неосторожных действий пользователей или сбоев в работе системы. Главный риск в данном случае — появление дублей справочников (номенклатуры, контрагентов) и документов при попытке настроить обмен заново. Рассмотрим подробно, как восстановить работоспособность обмена и не повредить данные.

Анализ механизмов синхронизации: что происходит при удалении настроек

Для начала разберем техническую сторону вопроса. В современных конфигурациях 1С обмен данными строится на использовании Планов обмена. Когда вы настраиваете синхронизацию, в системе создается объект — «Узел», который имеет свой уникальный внутренний идентификатор (GUID). Информация о том, какой объект в базе УТ соответствует объекту в базе БП, хранится в специальном регистре сведений Соответствия объектов информационных баз.

Проанализируем последствия удаления узла:

  1. Разрыв связей: Записи в регистре сведений привязаны к конкретному узлу. Если узел удален, эти записи либо удаляются вместе с ним (в зависимости от логики конфигурации), либо становятся «сиротами», ссылаясь на несуществующий объект.
  2. Проблема идентификации: При создании новой настройки обмена система создает новые узлы с новыми GUID. Даже если вы назовете их точно так же, для программы это будут совершенно другие технические объекты.
  3. Риск дублирования: Если система не найдет записи в регистре соответствий, она попытается найти объекты по полям поиска (ИНН, КПП, Наименование, Артикул). Если и это не сработает или данные будут незначительно отличаться, 1С создаст новый объект, что приведет к дублям.

Шаг 1. Проверка состояния регистра соответствий

Прежде чем приступать к созданию новой настройки, выясним, остались ли данные о предыдущих сопоставлениях. Посмотрим состояние регистра сведений Соответствия объектов информационных баз в обеих конфигурациях. Сделать это можно через «Функции для технического специалиста» (или «Все функции» в старых версиях).

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

Шаг 2. Подготовительные действия перед новой настройкой

Если мы решили настраивать обмен заново, выполним обязательные подготовительные шаги, чтобы избежать хаоса в данных:

  1. Создание резервных копий: Это обязательный этап. Выполните выгрузку информационных баз .dt или создайте копии на уровне СУБД.
  2. Проверка префиксов баз: Проанализируем настройки префиксов в НСИ и администрирование — Настройка префиксов. Важно, чтобы префиксы (например, «УТ» и «БП») остались теми же, что и были до удаления. Если они изменятся, номера документов при загрузке могут начать дублироваться с новыми префиксами.
  3. Установка даты запрета загрузки: Чтобы случайно не изменить данные за прошлые периоды (например, 4 квартал), установим дату запрета загрузки данных в обеих базах на конец прошлого года.

Шаг 3. Создание новой настройки синхронизации

Рассмотрим процесс создания новой синхронизации через формат EnterpriseData (стандартный для современных баз):

  1. Запустим помощник создания новой синхронизации в одной из баз (обычно начинают с УТ).
  2. На этапе настройки не запускайте отправку и получение данных сразу по завершении помощника.
  3. Важным моментом является первый запуск сопоставления. Система предложит «Выполнить сопоставление данных». Мы должны выбрать интерактивный режим.

Шаг 4. Управление регистрацией изменений

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

Проанализируем ситуацию: если мы просто нажмем «Синхронизировать», 1С может выгрузить огромный массив данных за все годы. Нам нужно:

  1. Открыть состав отправляемых данных.
  2. Выделить все объекты и выбрать «Отменить регистрацию».
  3. Зарегистрировать вручную только те документы, которые входят в 1 квартал текущего года. Это можно сделать кнопкой «Зарегистрировать изменения выбранных объектов» или с помощью отбора по периоду.

Шаг 5. Интерактивное сопоставление (Борьба с дублями)

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

1. Поиск по ГУИД: Если объекты ранее успешно синхронизировались, их уникальные идентификаторы (GUID) внутри платформы совпадают. Большинство современных правил обмена сначала ищут совпадение по GUID. Если оно найдено, объект сопоставится автоматически и без ошибок, даже если регистр соответствий был очищен.

2. Поиск по полям: Если GUID разные (например, контрагент был заведен в БП и УТ вручную независимо), система применит поиск по ИНН/КПП или Наименованию.

Рассмотрим порядок действий в окне сопоставления:

Экспертный метод: Восстановление идентификатора узла

Если у вас есть старая копия базы, можно попробовать восстановить связь регистра соответствий. Разберем этот сценарий:

В старой копии найдем старый узел обмена и узнаем его GUID. В новой рабочей базе создадим настройку, а затем с помощью обработки «Групповое изменение реквизитов» или небольшого фрагмента кода заменим GUID нового узла на старый.

Пример логики на языке 1С для понимания процесса:


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

Внимание: Данный метод является рискованным и рекомендуется только опытным специалистам. Для большинства случаев достаточно аккуратного интерактивного сопоставления.

Предотвращение проблем в будущем

Выясним, почему настройки были удалены. Часто это происходит при обновлении конфигурации или неграмотной очистке справочников. Чтобы минимизировать риски, рекомендуем:

Таким образом, восстановление синхронизации при удаленных настройках — процесс трудоемкий, но вполне выполнимый. Главное — это контроль регистрации изменений и ручное подтверждение сопоставлений при первом запуске нового обмена.

← На главную