Как перенести данные из ДАЛИОН: Управление магазином 1.2 в 1С:Розница 2.2?

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

Перенос данных из устаревших систем, таких как «ДАЛИОН: Управление магазином» редакции 1.2 (разработка ВЦ «СофтБаланс»), в современные конфигурации типа «1С:Розница» 2.2 — задача нетривиальная. Основная сложность заключается в различии архитектур: Далион 1.2 во многом базируется на логике «1С:Управление торговлей» 10.3, в то время как Розница 2.2 работает на управляемых формах с совершенно иным подходом к хранению цен и остатков.

В данной статье мы разберем по шагам, как организовать перенос контрагентов, номенклатуры с сохранением иерархии групп, а также коснемся вопросов переноса цен и остатков.

Способ 1: Универсальный обмен данными в формате XML (КД 2.0)

Это наиболее профессиональный метод, позволяющий перенести данные с сохранением ссылочной целостности. Для его реализации нам потребуется конфигурация «1С:Конвертация данных 2.0» и внешняя обработка V8Exchan83.epf.

Проанализируем основные этапы этого процесса:

  1. Подготовка правил обмена. Поскольку Далион 1.2 — это «динозавр» (как выразился автор темы), типовых правил для перехода на Розницу 2.2 не существует. Мы можем использовать правила «УТ 10.3 — Розница 2.2» в качестве шаблона. Нам необходимо выгрузить описания структур обеих баз и загрузить их в «Конвертацию данных».
  2. Настройка поиска объектов. Обратите внимание, что автоматическое сопоставление по внутренним идентификаторам (GUID) не сработает, так как базы создавались независимо. Настройте правила поиска по Артикулу или Наименованию для номенклатуры и по ИНН / КПП для контрагентов.
  3. Перенос иерархии. Чтобы группы номенклатуры (папки) перенеслись корректно, в ПКС (правилах конвертации свойств) обязательно должно быть настроено соответствие поля Родитель и ЭтоГруппа.
  4. Выгрузка и загрузка. В базе Далион используем обработку «Универсальный обмен данными в формате XML». Выгружаем данные в файл. В Рознице запускаем ту же обработку (версия для 8.3), переходим на вкладку «Загрузка», выбираем файл и режим работы «на клиенте».

Разберем пример кода, который часто используется в обработчиках КД для проверки группы перед загрузкой:


Если Объект.ЭтоГруппа Тогда
    // Логика обработки группы, например, установка спец. реквизитов
    Объект.НаименованиеПолное = Источник.Наименование;
КонецЕсли;

Способ 2: Загрузка через табличный документ (Excel)

Если работа с «Конвертацией данных» кажется слишком трудоемкой, или если вам нужно перенести только справочники и остатки, воспользуемся стандартной обработкой «Загрузка данных из табличного документа».

Рассмотрим алгоритм действий:

  1. Выгрузка из Далиона. В справочнике номенклатуры (или отчете) выводим список в табличный документ. Сохраняем результат в формате .xls или .xlsx.
  2. Подготовка файла. Для корректного создания иерархии в файле Excel должна быть колонка с названием группы (родителя).
  3. Настройка загрузки в Рознице. Запускаем обработку «Загрузка данных из табличного документа». Выбираем целью справочник Номенклатура.
  4. Решение проблемы групп. В настройках поля Родитель установите флаг «Создавать новый, если не найден». В этом случае система автоматически создаст структуру папок, если их еще нет в базе.

Полезный лайфхак: Если групп очень много (более 150), можно временно записать название группы в какой-нибудь неиспользуемый текстовый реквизит товара.

Перенос цен и категорий цен

Проанализируем ситуацию с ценами. В Далионе 1.2 цены могут храниться в периодическом регистре сведений, а в Рознице 2.2 цены устанавливаются только специальным документом Установка цен номенклатуры.

Чтобы перенести цены, выполним следующие действия:

  1. В Рознице создаем Виды цен (например, «Закупочная», «Розничная»), соответствующие категориям цен в Далионе.
  2. Выгружаем из Далиона таблицу: Номенклатура, Штрихкод, Цена.
  3. В Рознице создаем новый документ Установка цен номенклатуры.
  4. Используем встроенную кнопку «Загрузить из внешнего файла» в табличной части документа. Сопоставляем колонки и загружаем данные.

Если в Далионе используются формулы (например, «Закупка + 50%»), в Рознице 2.2 лучше настроить эти правила расчета в справочнике Виды цен. Тогда достаточно будет перенести только закупочные цены, а розничные рассчитаются автоматически при проведении документа.

Перенос остатков и штрихкодов

Выясним причину, почему остатки нельзя перенести простым XML-обменом справочников. Остатки — это ресурс регистра, актуальный на конкретный момент времени. Для их переноса мы рекомендуем:

1. Сформировать в Далионе отчет «Ведомость по товарам на складах» на дату перехода.
2. Сохранить отчет в Excel.
3. В Рознице создать документ Ввод начальных остатков узла или воспользоваться документом Оприходование товаров.
4. Загрузить данные из Excel в табличную часть документа.

Важный момент со штрихкодами: Штрихкоды в Рознице 2.2 хранятся в регистре сведений Штрихкоды. При загрузке номенклатуры из Excel их нужно загружать отдельным проходом, выбрав этот регистр в качестве приемника данных, сопоставляя их по владельцу (Номенклатуре).

Заключение

Мы рассмотрели два основных пути миграции. Использование Конвертации данных предпочтительнее для разового полного переноса всей базы, включая контрагентов и иерархию. Метод с Excel проще в освоении и лучше подходит для переноса «чистых» данных — только тех позиций, которые реально есть на остатках, что позволяет «почистить» базу от старого мусора при переезде в новую систему.

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

← На главную