Проанализируем распространенную ситуацию: у нас есть рабочая база на конфигурации 1С:Управление торговлей 10.3 и ее копия. Для копии была выполнена свертка базы, но этот процесс занял пару дней. За это время в основной (рабочей) базе пользователи продолжали работать и создали ряд новых документов реализации. Возникает закономерный вопрос: как перенести эти «потерянные» за пару дней документы в свернутую копию, если конфигурация доработана, а использовать полноценную «Конвертацию данных» нет желания или времени? Рассмотрим подробнее несколько эффективных способов решения этой задачи.
Эта обработка производит полную или частичную выгрузку данных информационной базы в файл формата XML.
Частая проблема, с которой сталкиваются разработчики (и автор оригинального вопроса): скачанная обработка просто не открывается или выдает ошибку. Выясним причину. Конфигурация УТ 10.3 построена на обычных формах. Скорее всего, вы пытаетесь использовать современную версию для управляемых форм (часто содержит в названии «83»).
Разберем по шагам, как сделать всё правильно:
ВыгрузкаЗагрузкаДанныхXML.epf или ВыгрузкаЗагрузкаДанныхXML82.epf. Ее можно найти на диске ИТС или в каталоге установки конфигурации «Конвертация данных 2».Документы.РеализацияТоваровУслуг.Важное преимущество: Данная обработка переносит все объекты по их внутренним уникальным идентификаторам (GUID). Это означает, что при загрузке документов в копию справочники (Контрагенты, Номенклатура, Договоры) не задвоятся, а четко синхронизируются с уже существующими элементами в свернутой базе.
Если вы не хотите возиться с файлами выгрузки, рассмотрим программный вариант. Перенос данных напрямую через COM-соединение отлично подходит, когда базы полностью идентичны.
Для реализации этого метода напишем небольшую внешнюю обработку в базе-приемнике (копии), которая будет подключаться к источнику через V83.COMConnector.
Посмотрим на пример логики, которую необходимо реализовать:
Документы.РеализацияТоваровУслуг.СоздатьДокумент().УникальныйИдентификатор().Так как структура метаданных совпадает, сопоставление по GUID сработает идеально и потребует написания минимального количества кода.
В конфигурацию 1С:УТ 10.3 уже встроены мощные механизмы обмена, которые можно использовать для разового переноса. Проанализируем этот подход.
Вам потребуется настроить стандартный план обмена, например, план обмена «Полный»:
Этот метод абсолютно безопасен, использует платформенные механизмы XML-сериализации и гарантирует целостность данных.
Иногда быстрее написать свой простой скрипт, чем настраивать стандартные узлы. Рассмотрим, как создать выгрузку нужных реквизитов в текстовый файл формата JSON.
В базе-источнике мы пишем обработку, которая формирует структуру и сериализует её в JSON. Обязательно нужно выгружать не только наименования справочников, но и их идентификаторы, чтобы загрузчик смог их найти.
Посмотрим на пример структуры файла, которую мы можем сформировать:
{
"Документы": [
{
"Дата": "2023-12-12T15:00:00",
"Номер": "УТ-00015",
"Контрагент_GUID": "e3b0c442-989b-464c-8650-123456789abc",
"СуммаДокумента": 15000.00,
"Товары": [
{
"Номенклатура_GUID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"Количество": 10,
"Цена": 1500.00
}
]
}
]
}
В базе-приемнике пишем обработку загрузки, которая читает этот JSON, ищет справочники по переданным GUID и программно создает реализации.
Несмотря на то, что в исходной задаче стояло условие «не используя КД», участники обсуждения справедливо отмечают, что для полностью идентичных конфигураций создание правил в «Конвертации данных 2.1» занимает не более 15-20 минут.
Достаточно загрузить в КД 2 структуру метаданных УТ 10.3, нажать кнопку автоматического создания правил обмена и отключить все правила выгрузки данных (ПВД), оставив только ПВД для документа реализации с фильтром по периоду. В таком случае платформа сама сгенерирует весь необходимый код для корректного переноса документов и всех их зависимостей (контрагентов, договоров, номенклатуры).
Подведем итоги: если вам нужно перенести пару дней работы между одинаковыми базами УТ 10.3, самым быстрым и безопасным решением без программирования является использование стандартной обработки «Выгрузка и загрузка данных XML» правильной версии (для обычных форм). Если же требуется автоматизация, прямое OLE-соединение или использование штатной регистрации изменений по плану обмена станут отличной альтернативой.