← На главную
Когда возникает необходимость перенести документы или справочники из одной базы 1С в другую с аналогичной конфигурацией, многие начинающие специалисты сразу обращаются к конфигурации «Конвертация данных». Однако создание правил обмена в КД требует специальных навыков, времени и отдельной базы для разработки. Если структуры метаданных в обеих базах совпадают, эту задачу можно решить гораздо быстрее и проще с помощью универсальных инструментов платформы. Разберем подробнее, как организовать перенос данных, какие инструменты использовать и на какие подводные камни обратить внимание.
Использование обработки «Выгрузка и загрузка данных XML»
Для прямого обмена между одинаковыми конфигурациями стандартно применяется внешняя обработка «Выгрузка и загрузка данных XML» (в более ранних редакциях известная как «Выгрузка данных в идентичную конфигурацию»). Выясним ключевые принципы ее работы:
- Идентификация объектов по уникальному идентификатору (GUID): инструмент не выполняет сопоставление по коду, ИНН или наименованию. Объекты переносятся в точности с теми же внутренними ссылками. Если объект с таким же GUID уже есть в приемнике, он будет полностью перезаписан. Если его не было — создается новый.
- Выборочная выгрузка с отборами: обработка позволяет гибко указать, какие именно виды документов необходимо выгрузить. В дереве метаданных можно отметить нужные типы документов и настроить для них произвольные фильтры (по периоду, организации, контрагенту или номерам документов).
- Автоматическая выгрузка ссылочных данных: при переносе документов нет необходимости вручную искать и выгружать все связанные справочники. Достаточно включить выгрузку ссылочных данных, и платформа выгрузит только те элементы номенклатуры, контрагентов, договоров и статей движения денежных средств, которые непосредственно задействованы в выгружаемых документах.
- Управление движениями регистров: обработка позволяет включить или исключить выгрузку движений по регистрам накопления, сведений и бухгалтерии.
Пошаговый порядок переноса документов
Разберем по шагам весь процесс переноса документов из базы-источника в базу-приемник:
- Создание резервных копий: перед началом любых операций обязательно создаем архивную копию базы-приемника, чтобы защитить учетные данные от случайной перезаписи или дублирования.
- Открытие обработки в базе-источнике: запускаем обработку через главное меню платформы (
Файл — Открыть) в режиме «1С:Предприятие». - Настройка состава выгрузки: в дереве метаданных находим ветку
Документы, отмечаем только те виды документов, которые требуется перенести, и нажимаем кнопку настройки отбора. Устанавливаем требуемый период или фильтр по конкретным реквизитам. - Формирование файла выгрузки: указываем путь к итоговому XML-файлу и нажимаем кнопку выгрузки данных.
- Загрузка данных в базу-приемник: открываем ту же обработку в целевой базе, переходим на вкладку загрузки, выбираем сохраненный XML-файл и запускаем процесс чтения.
Ограничения и возможные проблемы при переносе
Проанализируем технические нюансы, с которыми можно столкнуться при использовании универсального XML-обмена:
- Несовпадение релизов конфигураций: обработка предназначена строго для одинаковых метаданных. Если релизы баз даже незначительно различаются (например, в одной из баз добавлен новый реквизит или изменена структура табличной части), процесс загрузки может завершиться ошибкой структуры XML или потерей значений несовпадающих реквизитов.
- Проведение документов и формирование проводок: при прямой загрузке документов через XML их статус проведения может перенестись со старыми движениями без вызова события
ОбработкаПроведения. Если же движения по регистрам были исключены при выгрузке, документы в приемнике окажутся со статусом «Проведен», но с пустыми регистрами. В этом случае после загрузки потребуется выполнить групповое перепроведение документов, чтобы пересчитать партии и взаиморасчеты по алгоритмам базы-приемника. - Появление дублирующихся справочников: если справочники (например, контрагенты или номенклатура) заводились в обеих базах параллельно вручную, их GUID не совпадут. При загрузке документов они запишутся в базу как новые элементы, создавая визуальные дубли.
- Ограничения по объему оперативной памяти: при попытке перенести большой массив документов единым пакетом XML-сериализатор платформы может исчерпать доступную оперативную память (особенно в 32-разрядных клиентах). Поэтому рекомендуется разбивать большие объемы данных на части по периодам или по видам документов.
Альтернативные способы переноса данных
Если базы частично отличаются или требуется переносить документы с контролем дублей, рассмотрим альтернативные варианты:
- Синхронизация через формат EnterpriseData: встроенный механизм современных типовых конфигураций на базе БСП позволяет передавать документы через XML или JSON без разработки правил в КД. При этом сопоставление справочников выполняется по бизнес-ключам (ИНН/КПП, наименование, артикул), что защищает учет от появления дублей.
- Прямой программный перенос через COM-соединение: если обе информационные базы доступны локально или в сети, можно использовать скрипт с объектом
V83.COMConnector. Такой подход позволяет программно читать документы из одной базы, сопоставлять поля и создавать документы в целевой базе с вызовом всех типовых процедур проверки и проведения. - Загрузка данных из табличного документа: позволяет экспортировать реестр документов или табличные части в таблицу и загрузить в приемник с сопоставлением колонок, что нивелирует различия в версиях конфигураций.