К статье
Практический материал

Справочники и Данные · 10 мин

Как объединить данные в 1С: практическое руководство

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

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

Универсального «одного кнопочного» решения нет. Для чистки дублей подходит типовая обработка «Поиск и замена значений», для переноса данных между разными конфигурациями используется «Конвертация данных» или «Универсальный обмен данными в формате XML», а регулярный обмен между базами настраивается через планы обмена. Каждый инструмент имеет свои ограничения и требует подготовки.

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

Определите, что именно нужно объединить

Под «объединением данных» в 1С понимают несколько разных задач, и от постановки зависит выбор инструмента. Первая задача — устранение дублей: в справочнике «Контрагенты» или «Номенклатура» заведено несколько элементов, обозначающих один и тот же объект, и по ним уже есть документы. Нужно свести их к одному элементу, сохранив все ссылки.

Вторая задача — объединение двух баз: например, компания вела учёт в двух отдельных базах «Бухгалтерия предприятия» и решила перейти на одну. Здесь требуется перенести справочники, документы и остатки с сопоставлением объектов, чтобы не создать новых дублей.

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

Маршрут решения

Как выбрать инструмент

Нужно свести дубли элементов справочника в одной базеИспользуйте обработку «Поиск и замена значений»
Нужно объединить две базы одинаковой конфигурацииИспользуйте «Универсальный обмен данными в формате XML» или план обмена
Конфигурации баз различаются (разные версии или решения)Настройте правила в «Конвертации данных»
Нужно объединить доработки двух конфигурацийИспользуйте «Сравнение и объединение конфигураций» в конфигураторе

Объединение дублей в справочниках

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

Порядок работы: сначала найдите дубли по критериям сходства (по наименованию, ИНН, КПП), затем для каждой группы укажите основной элемент, после чего запустите замену. Обработка перепишет ссылки в документах, регистрах и других справочниках, а дубли пометит на удаление или заменит.

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

Порядок объединения дублей контрагентов
  1. 1
    Сделайте резервную копию базы или работайте на тестовой копии
  2. 2
    Откройте «Администрирование» — «Обслуживание» — «Поиск и удаление дублей»
  3. 3
    Выберите справочник и критерии поиска (ИНН, наименование)
  4. 4
    Проверьте найденные группы и назначьте основной элемент в каждой
  5. 5
    Запустите объединение и дождитесь завершения обработки
  6. 6
    Проверьте несколько документов: ссылки должны вести на основной элемент
  7. 7
    Удалите помеченные дубли через «Удаление помеченных объектов»

Объединение двух баз одной конфигурации

Когда обе базы работают на одной конфигурации с близкими релизами, задача упрощается. Для разового переноса подходит обработка «Универсальный обмен данными в формате XML» (или «Выгрузка и загрузка данных XML» из состава конфигурации): данные выгружаются из базы-источника в файл и загружаются в базу-приёмник с автоматическим сопоставлением объектов по уникальному идентификатору.

Критически важный момент — сопоставление справочников. Если один и тот же контрагент существует в обеих базах, но с разными идентификаторами, после загрузки появится дубль. Поэтому перед объединением баз желательно привести ключевые справочники в порядок: либо заранее синхронизировать идентификаторы, либо использовать правила конвертации с поиском по реквизитам (ИНН + КПП для контрагентов).

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

Конвертация данных для разных конфигураций

Если конфигурации различаются — например, перенос из «1С:Управление торговлей 10.3» в «Бухгалтерию предприятия 3.0» или из самописной конфигурации в типовую, — простая выгрузка XML не подойдёт: структуры объектов не совпадают. Для таких задач используется конфигурация «Конвертация данных» (редакция 2.1 или 3.0).

В «Конвертации данных» создаются правила обмена: для каждого объекта источника задаётся объект приёмника и правила конвертации свойств — какие реквизиты куда переносятся и как преобразуются. Поиск существующих объектов настраивается по ключевым полям, что позволяет избежать дублей.

Настройка правил — трудоёмкая работа, требующая понимания структуры обеих конфигураций. Для популярных пар конфигураций существуют типовые правила, которые поставляются вместе с конфигурациями или доступны в составе «Конвертации данных». Их стоит брать за основу и дорабатывать под свои особенности, а не писать правила с нуля.

Объединение конфигураций в конфигураторе

Разработчикам иногда нужно объединить не данные, а метаданные — перенести доработки из одной конфигурации в другую. Для этого в конфигураторе есть режим «Конфигурация» — «Сравнить, объединить с конфигурацией из файла». Система покажет различия объектов и позволит выбрать, какие изменения перенести.

При объединении важно правильно расставить приоритеты: для каждого изменённого объекта указывается, чья версия берётся — основной конфигурации или загружаемой. Ошибка на этом этапе может затереть чужие доработки или, наоборот, откатить обновление поставщика. Перед объединением сохраните cf-файл текущей конфигурации.

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

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

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

Для объединения дублей полезно сформировать отчёт по взаиморасчётам с контрагентом, чьи карточки объединялись, и убедиться, что итоговая задолженность не изменилась. Для переноса между базами — сверить оборотно-сальдовую ведомость источника и приёмника за совпадающий период.

Контрольные точки

Как проверить результат объединения

Количество элементов справочника
Норма

Уменьшилось на число объединённых дублей

Тревожный признак

Изменилось сильнее ожидаемого — возможна потеря элементов

Оборотно-сальдовая ведомость
Норма

Итоги по счетам совпадают с контрольными значениями

Тревожный признак

Расхождения по счетам — документы перенеслись не полностью

Ссылки в документах
Норма

Документы открываются, ссылки ведут на основные элементы

Тревожный признак

Битые ссылки вида «Объект не найден»

Дубли после загрузки
Норма

Поиск дублей по ИНН/наименованию ничего не находит

Тревожный признак

Появились новые дубли — правила сопоставления не сработали

Типичные ошибки при объединении данных
01
Работа без резервной копии — при ошибке данные теряются безвозвратно
02
Объединение дублей без проверки ссылок — «основным» назначают элемент с худшим заполнением реквизитов
03
Загрузка в рабочую базу без теста на копии — ошибки правил обнаруживаются, когда откат уже невозможен
04
Игнорирование прав доступа — пользователь с ограниченными правами не видит часть данных, и обмен выполняется неполностью
05
Перенос документов без переноса связанных справочников — в приёмнике появляются битые ссылки

Ограничения и когда нужен специалист

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

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

Итог

Что важно запомнить

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

Частые вопросы

Можно ли объединить две базы 1С разных версий одной конфигурации?

Да, но сначала приведите версии к одному релизу: обновите более старую базу. Обмен XML между разными релизами часто завершается ошибками из-за различий в структуре метаданных.

Что произойдёт с документами при объединении дублей контрагента?

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

Как избежать дублей при загрузке данных из другой базы?

Настройте поиск объектов по ключевым реквизитам: для контрагентов — ИНН и КПП, для номенклатуры — артикул или код. В универсальном обмене XML сопоставление идёт по внутреннему идентификатору, поэтому одинаковые объекты с разными идентификаторами станут дублями.

Сколько времени занимает объединение дублей?

Зависит от количества ссылок на дубли и размера базы: от минут при десятках документов до нескольких часов в больших базах. Операция обычно требует монопольного доступа, поэтому её планируют на нерабочее время.

Можно ли отменить объединение дублей?

Штатной функции отмены нет. Единственный способ вернуть состояние до операции — восстановить базу из резервной копии, сделанной перед запуском обработки. Поэтому копия обязательна.

Чем отличается план обмена от конвертации данных?

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