Как настроить перенос контрагентов в партнеры и контрагенты при переходе с КА 1.1 на КА 2.4 в Конвертации данных 2.1?

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

Переход с устаревших конфигураций на платформе «1С:Предприятие 8.2» (таких как «1С:Комплексная автоматизация 1.1» или «1С:Управление производственным предприятием 1.3») на современные системы («1С:Комплексная автоматизация 2.4», «1С:ERP 2») всегда сопряжен с серьезной переработкой структуры нормативно-справочной информации (НСИ). Одним из наиболее сложных и важных этапов является перенос контрагентов. Сложность заключается в том, что одна сущность из старой базы должна превратиться в две связанные сущности в новой.

В этой статье мы подробно разберем, как решить эту задачу с помощью программного инструмента «Конвертация данных 2.1» (КД 2). Мы проанализируем архитектурные различия справочников, изучим готовые механизмы от разработчиков «1С» и рассмотрим пошаговые алгоритмы ручной настройки правил обмена.

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

Архитектурные различия справочников в КА 1.1 и КА 2.4

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

  1. В конфигурации «1С:Комплексная автоматизация 1.1» (Источник) существовал единый справочник СправочникСсылка.Контрагенты. Он хранил в себе как юридическую информацию (ИНН, КПП, юридический адрес, банковские счета), так и управленческую структуру (с какими конкретно филиалами мы ведем торговую деятельность, холдинги, группы компаний).
  2. В конфигурации «1С:Комплексная автоматизация 2.4» (Приемник) эта структура была разделена на два независимых справочника:
    • СправочникСсылка.Партнеры — управленческий справочник. Он предназначен для ведения структуры холдингов, сетевых клиентов, фактических торговых точек и брендов. Партнеры не содержат ИНН, КПП и банковских реквизитов. Именно с партнерами связываются сделки, заказы и коммерческие соглашения.
    • СправочникСсылка.Контрагенты — регламентированный справочник. В нем хранятся строго юридические лица или индивидуальные предприниматели, их ИНН, КПП, ОГРН, адреса регистрации и банковские счета. Эти данные используются для формирования первичных документов (ТОРГ-12, Счет-фактура) и регламентированной отчетности.

При этом в КА 2.4 справочник Контрагенты имеет обязательный реквизит Партнер. Таким образом, реализуется связь «многие контрагенты (юрлица) подчинены одному партнеру (управленческой сущности/холдингу)». При переносе данных перед нами встает задача: как из одного элемента справочника Контрагенты источника получить два связанных объекта приемника — Партнер и Контрагент.

Рассмотрим два основных пути решения этой задачи: использование стандартных правил от фирмы «1С» и самостоятельную настройку правил «с нуля».

Решение №1: Использование готовых правил перехода от фирмы «1С»

Разработчики фирмы «1С» уже предусмотрели штатные механизмы перехода с КА 1.1 на КА 2.4. Нам не нужно изобретать велосипед — готовые правила обмена уже встроены в саму конфигурацию-приемник. Извлечем их для последующего использования и доработки.

Разберем этот процесс по шагам:

  1. Запустите конфигуратор базы «1С:Комплексная автоматизация 2.4» (или «1С:ERP 2»).
  2. В дереве метаданных найдите ветку «Общие», а внутри нее раскройте раздел «Макеты».
  3. Выполните поиск макетов, содержащих в имени шаблоны перехода. Нам понадобятся макеты с названиями вида ПравилаОбмена_КА11_КА2 или ПравилаОбмена_УПП13_ERP2.
  4. Откройте найденный макет. Он представляет собой XML-документ.
  5. Сохраните этот макет на свой локальный диск. Для этого выберите в меню «Файл» -> «Сохранить как...» и укажите тип файла «Текстовый документ (*.txt)» или просто скопируйте весь текст макета в буфер обмена и вставьте в файл с расширением .xml.
  6. Запустите информационную базу «Конвертация данных 2.1».
  7. Перейдите в раздел загрузки правил и импортируйте сохраненный XML-файл.

После импорта в КД 2.1 мы получим полностью готовую и протестированную структуру правил обмена. Проанализировав эти правила, мы увидим готовые ПКО (Правила конвертации объектов) для переноса контрагентов, партнеров, их контактной информации, соглашений и договоров. Это сэкономит десятки часов работы.

Решение №2: Самостоятельная настройка каскадной выгрузки в КД 2.1

Если готовые правила по каким-то причинам не подходят или вы хотите настроить перенос «с нуля», разберем технический прием каскадной выгрузки в КД 2. Этот способ основан на связи ПКО через свойства объектов.

Проанализируем алгоритм настройки:

Шаг 1. Создание ПКО для справочника Партнеры

Сначала настроим правила создания управленческого объекта — Партнера. Создаем новое ПКО:

В настройках ПКС (Правил конвертации свойств) сопоставляем наименование контрагента из источника с реквизитами партнера в приемнике (такими как Наименование, РабочееНаименование, ПубличноеНаименование). Также необходимо перенести признаки деятельности (является ли объект клиентом или поставщиком). В КА 1.1 это были флажки Покупатель и Поставщик в карточке контрагента, а в КА 2.4 — булевы реквизиты Клиент и Поставщик в справочнике Партнеры.

Настроим поля поиска для Партнера. Рекомендуется использовать поиск по наименованию или по уникальному идентификатору (УИД) источника, если перенос выполняется впервые.

Шаг 2. Создание ПКО для справочника Контрагенты

Теперь создаем правило для выгрузки регламентированного контрагента:

Сопоставляем реквизиты ИНН, КПП, ОГРН, Юридическое/Физическое лицо и т.д. В качестве полей поиска для контрагента лучше всего выбрать связку ИНН + КПП.

Шаг 3. Связывание объектов через свойства

В ПКО Контрагенты находим реквизит приемника Партнер. Нам нужно заполнить его тем партнером, который создается из этого же контрагента источника. Настроим ПКС для этого свойства следующим образом:

Как работает этот механизм при выгрузке и загрузке:

Когда выгрузка дойдет до ПКО Контрагенты, система начнет обрабатывать его свойства. Дойдя до реквизита Партнер, КД 2 увидит, что для него назначено ПКО Контрагенты_Партнеры, а в качестве источника передана ссылка на текущего контрагента. Программа временно переключится на выполнение правила Контрагенты_Партнеры, сформирует в XML-файле узел выгрузки Партнера, получит его уникальный идентификатор и запишет его в узел Контрагента как ссылку на Партнера.

При загрузке в КА 2.4 сначала будет прочитан и создан объект Партнер, а затем будет создан объект Контрагент, в реквизит Партнер которого автоматически запишется ссылка на только что созданного партнера. Связь успешно установится без написания сложного программного кода.

Решение №3: Программная выгрузка через ВыгрузитьПоПравилу

Иногда стандартной каскадной выгрузки бывает недостаточно. Например, если у вас в КА 1.1 заведено несколько карточек контрагентов для разных филиалов (с одинаковым ИНН, но разными КПП и адресами), а в КА 2.4 вы хотите объединить их под одним общим партнером (головной организацией). В этом случае потребуется программное управление выгрузкой.

Для реализации такой логики мы можем использовать обработчик событий «Перед выгрузкой» или «После выгрузки» в ПКО Контрагенты. Мы можем принудительно инициализировать выгрузку партнера с передачей параметров поиска.

Посмотрим на пример программного кода, который можно прописать в обработчике ПКО:


// Пример программного вызова выгрузки партнера по правилу
ПараметрыВыгрузки = Новый Структура;
ПараметрыВыгрузки.Вставить("ГоловнойКонтрагент", Источник.ГоловнойКонтрагент);

// Принудительно выгружаем партнера по специальному ПКО
ВыгрузитьПоПравилу(Источник, , ПараметрыВыгрузки, , "Контрагенты_Партнеры");

Этот подход позволяет гибко управлять процессом: вы можете программно анализировать ИНН контрагента, искать, нет ли уже созданного партнера с таким ИНН, и связывать контрагентов-филиалов с одним родителем-партнером, избегая замусоривания базы дублирующимися партнерами.

Важные нюансы и настройки систем при переносе

При переносе данных из КА 1.1 в КА 2.4 необходимо учитывать несколько критически важных настроек в базе-приемнике:

  1. Функциональная опция «Независимо вести партнеров и контрагентов»:

    Перед началом загрузки зайдите в КА 2.4 в раздел НСИ и администрирование -> Настройка НСИ и разделов -> CRM и маркетинг. Обратите внимание на опцию «Независимо вести партнеров и контрагентов».

    • Если эта опция выключена, система считает, что партнер и контрагент — это всегда одно и то же лицо. При создании контрагента конфигурация на уровне своей внутренней бизнес-логики автоматически создаст партнера. В таком случае в КД 2 можно переносить только контрагентов, а партнеры создадутся сами. Однако это лишает вас возможности сопоставлять несколько контрагентов одному партнеру.
    • Если опция включена, справочники работают независимо. Рекомендуется включать эту опцию и использовать явное заполнение связей через КД 2, как было описано выше. Это гарантирует корректность структуры данных.
  2. Перенос контактной информации:

    В КА 1.1 адреса и телефоны хранятся в регистре сведений КонтактнаяИнформация, подчиненном контрагентам. В КА 2.4 контактная информация может принадлежать как партнеру, так и контрагенту. Нам нужно решить, куда ее переносить. Практика показывает, что телефоны и фактические адреса удобнее переносить на уровень Партнера (так как с ним работают менеджеры по продажам), а юридические адреса — на уровень Контрагента (для подстановки в печатные формы регламентированных документов).

  3. Проблема дублирования партнеров:

    При использовании стандартного переноса «один в один» для каждого контрагента создается свой партнер. Если у вас в базе КА 1.1 велся учет по филиалам («Сбербанк Москва», «Сбербанк СПБ»), вы получите двух партнеров. Чтобы избежать дублей, настройте алгоритм поиска в ПКО Контрагенты_Партнеры так, чтобы поиск партнера шел по ИНН головной организации. Это позволит объединить филиалы под одной управленческой карточкой партнера в КА 2.4.

Используя приведенные методики и готовые правила из макетов конфигурации, мы сможем быстро и без ошибок настроить сложнейший переход по интеграции контрагентов и партнеров в новых конфигурациях линейки «1С:Предприятие 8.3».

← На главную