← На главную
При обслуживании конфигурации 1С:Управление производственным предприятием (1С:УПП) специалисты нередко сталкиваются с необходимостью слияния данных из двух разделившихся информационных баз. Типичная ситуация: в одной копии вести учет за первое полугодие, а в другой параллельно вводились документы за третий квартал, причем вторая база успела обновиться на новый релиз. Разберем подробнее, как корректно объединить такие базы, исключить искажение расчетных данных и избежать технических ошибок платформы.
Выясним причины сложностей при переносе данных между разными релизами
Попытка прямого переноса объектов между информационными базами с разной структурой метаданных сопровождается множеством рисков. Проанализируем ключевые сложности, возникающие в процессе слияния:
- Расхождения в структуре метаданных: В более свежем релизе могут измениться реквизиты, типы данных или табличные части документов. При выгрузке и загрузке через универсальные обработки XML это приводит к ошибкам формата или потерям данных.
- Изменение алгоритмов проведения: Если в базе-приемнике перепровести загруженные документы по правилам другого релиза (или с измененной учетной политикой, например, при переходе на
РАУЗ), суммы и движение партий полностью поменяются.
- Появление дубликатов элементов справочников: Если объекты справочников (
Контрагенты, Номенклатура, Договоры контрагентов) создавались в обеих базах независимо, они обладают разными уникальными идентификаторами (GUID), что гарантированно приведет к появлению дублей.
Способ 1. Выравнивание релизов информационных баз (Рекомендуемый подход)
Самым безопасным и технически чистым способом является приведение обеих баз к абсолютно одинаковой структуре метаданных перед переносом.
Рассмотрим по шагам данный алгоритм:
- Создание резервных копий: Обязательно сделаем полные копии (файлы
.dt или бэкапы СУБД) обеих информационных баз.
- Выравнивание релизов:
- Вариант А: Обновим конфигурацию базы за 1-е полугодие (база-приемник) до точного релиза базы за 3-й квартал.
- Вариант Б: Загрузим конфигурационный файл (
.cf) старого релиза в копию базы 3-го квартала, если состав реквизитов в новых документах не подвергался критическим изменениям.
- Перенос данных: После того как структуры метаданных станут идентичными, выгрузим документы за 3-й квартал из базы-источника в базу-приемник с помощью стандартной обработки
Выгрузка и загрузка данных XML.
Способ 2. Использование конфигурации «1С:Конвертация данных 2.1»
Если обновление базы-приемника строго запрещено условиями заказчика или наличием нетиповых доработок, наилучшим решением станет разработка правил обмена в конфигурации 1С:Конвертация данных 2.1 (КД 2.1).
Проанализируем преимущества данного подхода:
- Сопоставление по бизнес-ключам: В правилах конвертации объектов (ПКО) задается поиск справочников не по внутреннему GUID, а по колонкам
Код, ИНН/КПП или Артикул. Это предотвращает дублирование справочников.
- Игнорирование отсутствующих реквизитов: Поля, появившиеся в новом релизе, можно просто пропустить или заполнить значениями по умолчанию при загрузке в старый релиз.
- Гибкая настройка переноса: Возможность программно отключить движение или перенести только требуемые реквизиты.
Особенности переноса документов и движений регистров
При переносе данных в 1С:УПП всегда встает выбор: переносить сами документы или только их движения по регистрам.
Разберем плюсы и минусы каждого подхода:
- Перенос документов с повторным проведением: Переносятся сами документы, после чего выполняется их перепроведение. Это необходимо, если с документами планируют работать дальше (печатать формы, вводить на их основании другие документы). Важно: при перепроведении в 1С:УПП могут "поплыть" суммы себестоимости, НДС или взаиморасчетов, если в базах различаются настройки учетной политики или граница последовательности.
- Перенос документов вместе с движениями: Обработки переносят документ и жестко записывают сформированные им наборы записей регистров. Документы остаются проведёнными, но не требуют перепропроведения. Однако при случайном перепроведении пользователем движения пересчитаются по правилам текущей базы.
- Перенос движений через «Корректировку записей регистров»: Если первичные печатные формы в объединяемой базе не нужны, движения регистров накопления, сведений и бухгалтерии (
Хозрасчетный) переносят в специальный документ Корректировка записей регистров. Это гарантирует 100% сохранность всех сумм и остатков.
Оптимизация выгрузки через обработку «Выгрузка и загрузка данных XML»
Если выбор пал на универсальную обработку выгрузки в XML, при работе с крупными базами вроде 1С:УПП часто возникает проблема зависания и долгой обработки данных.
Рассмотрим, как правильно настроить состав выгружаемых объектов:
- Снимите флаги со служебных и информационных регистров: Никогда не выгружайте через XML крупные классификаторы. В частности, регистр сведений
АдресныйКлассификатор (или данные ФИАС/КЛАДР) может выгружаться со скоростью по несколько процентов в час и вызвать ошибку нехватки памяти (Out of memory). Классификаторы проще загрузить штатным путем из файлов поставки 1С.
- Настройка выгрузки регистров: Если у документа установлен флаг
Выгружать движения документов, платформа автоматически выгрузит наборы записей для регистров накопления, бухгалтерии и расчета, где данный документ выступает регистратором. Ставить отдельные галочки на сами эти регистры в дереве объектов не требуется.
- Независимые регистры сведений: Регистры сведений, не имеющие регистратора (например,
ЦеныНоменклатуры, КурсыВалют), выгружаются отдельно с явной установкой флагов.
- Порционная выгрузка: Разбивайте период выгрузки по месяцам. Это снижает размер итогового XML-файла и уменьшает нагрузку на оперативную память сервера.
Порядок действий после завершения переноса
После проведения процедуры объединения баз выполним обязательные регламентные операции:
- Запустим обработку
Поиск и замена дублей для выявления и объединения случайно продублированных контрагентов или элементов номенклатуры.
- Проверим технологический анализ учета и запустим обработку
Перепроведение документов (если переносились документы с необходимостью перерасчета).
- Сверим оборотно-сальдовую ведомость (ОСВ) и отчеты по ведомостям партий/затрат до и после слияния.