Ситуация, когда когда-то единая база 1С была разделена на две части (например, по филиалам или видам деятельности), а затем возникла необходимость их обратного слияния — одна из самых трудоемких задач для 1С-программиста. Сложность заключается не столько в самом техническом переносе данных, сколько в сохранении их целостности, уникальности ссылок и корректности ведения бухгалтерского и налогового учета. Разберем подробно, как реализовать этот процесс наиболее безопасным и эффективным способом.
Прежде чем приступать к объединению, проанализируем критически важный момент: поскольку ваши базы когда-то были одной ИБ, объекты, созданные до разделения, имеют абсолютно одинаковые внутренние идентификаторы (GUID). Это создает двоякую ситуацию:
GUID. Но они могут иметь одинаковые коды (для справочников) или номера (для документов). Без использования префиксов вы получите «кашу» в нумерации.Рассмотрим шаги, которые необходимо выполнить в обеих базах еще до начала миграции. Помните, что чистота данных «на берегу» сэкономит недели работы после слияния.
Проанализируем состояние справочников. Основная проблема — дубли контрагентов и номенклатуры. Один и тот же банк может называться «АТФ Банк» и «АТФБанк». Выполним следующие действия:
Контрагентов это ИНН + КПП. Для Номенклатуры — Артикул или Наименование.
Для Каждого МетаданноеДокумента Из Метаданные.Документы Цикл
Запрос = Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Документ." + МетаданноеДокумента.Имя);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Объект = Выборка.Ссылка.ПолучитьОбъект();
Объект.Номер = "Б" + Объект.Номер; // Добавляем префикс базы Б
Объект.Записать(РежимЗаписиДокумента.Запись);
КонецЦикла;
КонецЦикла;
Разберем, почему «Универсальный обмен данными в формате XML» через GUID (внутренний идентификатор) — не лучший выбор в данном случае. При использовании GUID вы теряете гибкость. Если в базе А и базе Б создали одного и того же контрагента «Газпром» после разделения, у них будут разные GUID, и вы получите дубль в любом случае.
Правильный подход — использование конфигурации «1С:Конвертация данных 2.1». Настроим правила обмена (ПКО) следующим образом:
Контрагентов установим галочки поиска на ИНН и КПП. Для Банков — на БИК.GUID, но добавить проверку по номеру и дате для документов, созданных после разделения.Рассмотрим последовательность действий при самом переносе. Процесс лучше разбить на порции:
ВводОстатков.Выясним, как проверить, что слияние прошло успешно. Самый надежный способ — сверка Оборотно-сальдовой ведомости (ОСВ).
Проанализируем ситуацию: сформируем ОСВ в базе А и базе Б на одну и ту же дату. Сложим показатели в Excel. После слияния ОСВ в объединенной базе должна в идеале до копейки совпадать с вашей суммой. Если есть расхождения, проверим следующие моменты:
НДС Продажи, НДС Покупки). Проверьте, чтобы при переносе документов Счет-Фактура корректно перенеслись их движения.Даже при идеальных правилах Конвертации данных, дубли останутся. Рассмотрим, как эффективно их вычистить:
Воспользуйтесь обработкой «Поиск и замена значений» (или встроенным механизмом БП 3.0). Она позволяет не просто удалить дубль, а заменить все ссылки на него в документах прошлых периодов. Это критически важно для сохранения истории учета. Бухгалтерам придется вручную пройтись по списку «подозрительных» контрагентов, где ИНН совпадает, а КПП или наименование отличается.
Важно: Перед любыми манипуляциями по замене ссылок обязательно сделайте резервную копию базы. Операция замены ссылок в регистрах необратима и может существенно повлиять на итоги прошлых периодов, которые уже закрыты и сданы.
Проанализировав все способы, можно сделать вывод: наиболее «правильный» путь — это предварительная простановка префиксов номеров в базе-источнике, создание детальных правил в Конвертации данных 2.1 с приоритетом поиска по ИНН/КПП для контрагентов и последующая ручная нормализация данных бухгалтерией. Только такой подход гарантирует, что ваша отчетность не «поплывет» после объединения.