Как перенести документы между одинаковыми базами 1С без конфигурации Конвертация данных

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

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

Использование обработки «Выгрузка и загрузка данных XML»

Для прямого обмена между одинаковыми конфигурациями стандартно применяется внешняя обработка «Выгрузка и загрузка данных XML» (в более ранних редакциях известная как «Выгрузка данных в идентичную конфигурацию»). Выясним ключевые принципы ее работы:

  1. Идентификация объектов по уникальному идентификатору (GUID): инструмент не выполняет сопоставление по коду, ИНН или наименованию. Объекты переносятся в точности с теми же внутренними ссылками. Если объект с таким же GUID уже есть в приемнике, он будет полностью перезаписан. Если его не было — создается новый.
  2. Выборочная выгрузка с отборами: обработка позволяет гибко указать, какие именно виды документов необходимо выгрузить. В дереве метаданных можно отметить нужные типы документов и настроить для них произвольные фильтры (по периоду, организации, контрагенту или номерам документов).
  3. Автоматическая выгрузка ссылочных данных: при переносе документов нет необходимости вручную искать и выгружать все связанные справочники. Достаточно включить выгрузку ссылочных данных, и платформа выгрузит только те элементы номенклатуры, контрагентов, договоров и статей движения денежных средств, которые непосредственно задействованы в выгружаемых документах.
  4. Управление движениями регистров: обработка позволяет включить или исключить выгрузку движений по регистрам накопления, сведений и бухгалтерии.

Пошаговый порядок переноса документов

Разберем по шагам весь процесс переноса документов из базы-источника в базу-приемник:

  1. Создание резервных копий: перед началом любых операций обязательно создаем архивную копию базы-приемника, чтобы защитить учетные данные от случайной перезаписи или дублирования.
  2. Открытие обработки в базе-источнике: запускаем обработку через главное меню платформы (Файл — Открыть) в режиме «1С:Предприятие».
  3. Настройка состава выгрузки: в дереве метаданных находим ветку Документы, отмечаем только те виды документов, которые требуется перенести, и нажимаем кнопку настройки отбора. Устанавливаем требуемый период или фильтр по конкретным реквизитам.
  4. Формирование файла выгрузки: указываем путь к итоговому XML-файлу и нажимаем кнопку выгрузки данных.
  5. Загрузка данных в базу-приемник: открываем ту же обработку в целевой базе, переходим на вкладку загрузки, выбираем сохраненный XML-файл и запускаем процесс чтения.

Ограничения и возможные проблемы при переносе

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

  1. Несовпадение релизов конфигураций: обработка предназначена строго для одинаковых метаданных. Если релизы баз даже незначительно различаются (например, в одной из баз добавлен новый реквизит или изменена структура табличной части), процесс загрузки может завершиться ошибкой структуры XML или потерей значений несовпадающих реквизитов.
  2. Проведение документов и формирование проводок: при прямой загрузке документов через XML их статус проведения может перенестись со старыми движениями без вызова события ОбработкаПроведения. Если же движения по регистрам были исключены при выгрузке, документы в приемнике окажутся со статусом «Проведен», но с пустыми регистрами. В этом случае после загрузки потребуется выполнить групповое перепроведение документов, чтобы пересчитать партии и взаиморасчеты по алгоритмам базы-приемника.
  3. Появление дублирующихся справочников: если справочники (например, контрагенты или номенклатура) заводились в обеих базах параллельно вручную, их GUID не совпадут. При загрузке документов они запишутся в базу как новые элементы, создавая визуальные дубли.
  4. Ограничения по объему оперативной памяти: при попытке перенести большой массив документов единым пакетом XML-сериализатор платформы может исчерпать доступную оперативную память (особенно в 32-разрядных клиентах). Поэтому рекомендуется разбивать большие объемы данных на части по периодам или по видам документов.

Альтернативные способы переноса данных

Если базы частично отличаются или требуется переносить документы с контролем дублей, рассмотрим альтернативные варианты:

  1. Синхронизация через формат EnterpriseData: встроенный механизм современных типовых конфигураций на базе БСП позволяет передавать документы через XML или JSON без разработки правил в КД. При этом сопоставление справочников выполняется по бизнес-ключам (ИНН/КПП, наименование, артикул), что защищает учет от появления дублей.
  2. Прямой программный перенос через COM-соединение: если обе информационные базы доступны локально или в сети, можно использовать скрипт с объектом V83.COMConnector. Такой подход позволяет программно читать документы из одной базы, сопоставлять поля и создавать документы в целевой базе с вызовом всех типовых процедур проверки и проведения.
  3. Загрузка данных из табличного документа: позволяет экспортировать реестр документов или табличные части в таблицу и загрузить в приемник с сопоставлением колонок, что нивелирует различия в версиях конфигураций.
← На главную