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