При переходе с системы «1С:Управление производственным предприятием» (УПП) на «1С:ERP Управление предприятием» одной из самых трудоемких задач становится перенос нормативно-справочной информации. Особенную сложность вызывает справочник Контрагенты. В отличие от УПП, где контрагент является единым объектом, в ERP реализована двухзвенная архитектура: Партнеры (управленческая сущность) и Контрагенты (юридическая сущность). Разберем подробно, как настроить правила в «Конвертации данных 2.0» (КД 2.0), чтобы данные перенеслись корректно, а связи между объектами не потерялись.
В ERP заложена гибкая логика: один Партнер (например, крупный холдинг) может объединять несколько Контрагентов (юридических лиц, входящих в этот холдинг). Прежде чем приступать к написанию правил, проанализируем настройки целевой базы ERP. Зайдем в раздел НСИ и администрирование -> Настройка НСИ и разделов -> CRM и маркетинг и проверим опцию Независимые партнеры и контрагенты:
Важно помнить, что при использовании «Универсального обмена данными в формате XML» в ERP объект записывается с установленным флагом ОбменДанными.Загрузка = Истина. В этом режиме стандартные проверки и обработчики (такие как автоматическое создание партнера при записи контрагента) отключаются. Поэтому наша задача — настроить правила так, чтобы и партнер, и контрагент создавались явно.
Первым делом создадим Правило Конвертации Объектов (ПКО) для партнеров. Источником в УПП будет выступать справочник Контрагенты, а приемником в ERP — справочник Партнеры.
Рассмотрим основные моменты настройки этого ПКО:
ИНН и Наименование (или Уникальный Идентификатор, если базы ранее синхронизировались).Клиент, Поставщик, ПрочиеОтношения. В УПП эти данные хранятся в карточке контрагента. Обязательно сопоставьте их, иначе в ERP вы получите «пустых» партнеров, которые не будут отображаться в списках выбора документов продажи или закупки.Пример настройки сопоставления типов отношений в ПКС (Правила Конвертации Свойств):
// В ПКС для свойства "Клиент"
Значение = Источник.Покупатель;
// В ПКС для свойства "Поставщик"
Значение = Источник.Поставщик;
Теперь создадим второе ПКО для Контрагентов (Источник: Контрагенты УПП -> Приемник: Контрагенты ERP). Самый ответственный момент здесь — заполнение реквизита Партнер в карточке контрагента.
Разберем по шагам, как это сделать:
Партнер.ПередВыгрузкой для этого свойства укажем:
Значение = Источник; // Передаем ссылку на текущего контрагента УПП в правило поиска партнера
Таким образом, система при загрузке контрагента сначала обратится к правилу поиска партнера, найдет или создаст его, и подставит ссылку в поле Партнер. Это гарантирует целостность данных.
Проанализируем ситуацию, когда объем данных составляет сотни тысяч записей. Поиск по строковым полям (ИНН/КПП) в процессе загрузки может критически замедлить обмен. Рассмотрим способы оптимизации:
1. Использование GUID (Уникальных идентификаторов).
Если это возможно, используйте поиск по внутреннему идентификатору. Это самый быстрый способ сопоставления в платформе 1С. Если GUID-ы в системах различаются, рекомендуется выполнить первую загрузку, а затем использовать регистры соответствия.
2. Использование Пюре-кода для поиска.
Если поиск по ИНН неизбежен, попробуйте кэшировать данные. Однако в рамках КД 2.0 лучше всего работает грамотная настройка полей поиска в ПКО. Убедитесь, что для полей поиска установлены соответствующие индексы в базе данных.
3. Порционная выгрузка.
Не пытайтесь выгрузить 280 000 записей в один XML-файл. Это приведет к переполнению оперативной памяти. Разделите выгрузку на части (например, по 20-50 тысяч объектов), используя отборы в обработке выгрузки (по коду, по группам или по дате изменения).
Посмотрим на ситуацию с розничными продажами. В ERP часто используется один предопределенный партнер «Розничный покупатель» для множества контрагентов-физлиц. Чтобы не плодить сотни тысяч лишних записей в справочнике Партнеры, в ПКО можно прописать условие:
Если Источник.ЭтоФизЛицо Тогда
ИмяПКО = "ПредопределенныйПартнерРозничныйПокупатель";
// Или программно находим ссылку на нужного партнера
КонецЕсли;
После завершения загрузки важно убедиться, что связи установились корректно. Проверьте следующие моменты:
Клиент/Поставщик? Без них партнеры будут «невидимы» для оперативной работы менеджеров.Таким образом, раздельный перенос партнеров и контрагентов с явным указанием правил сопоставления — это наиболее надежный и контролируемый метод миграции данных из УПП в ERP. Мы проанализировали основные риски, связанные с режимом загрузки, и определили оптимальную стратегию связывания объектов через КД 2.0.