Возможен ли штатный обмен между 1С:КА 2 и 1С:Розница 2 через универсальный формат?

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

При автоматизации розничной сети с наличием производственных или сложных складских операций часто возникает задача связать конфигурации 1С:Комплексная автоматизация 2 (КА) и 1С:Розница 2. Типового прямого пункта обмена в меню синхронизации данных между этими конфигурациями нет. Рассмотрим, насколько применим штатный универсальный формат (EnterpriseData), с какими скрытыми техническими проблемами придется столкнуться при его внедрении и как правильно организовать обмен данными.

Возможности штатного механизма EnterpriseData («Другая программа»)

Настроить синхронизацию между 1С:КА 2 и 1С:Розница 2 штатными средствами платформы 1С:Предприятие 8.3 возможно. Для этого используется план обмена СинхронизацияДанныхЧерезУниверсальныйФормат. При создании настройки в обеих конфигурациях необходимо выбрать пункт «Другая программа».

Однако при попытке запустить обмен «из коробки» пользователи сталкиваются с тем, что выгружается только базовая справочная информация (наименования номенклатуры), тогда как критически важные для розницы данные — штрихкоды, характеристики и цены — в базу-приемник не попадают либо переносятся некорректно. Разберем детально, почему это происходит.

Причины проблем при обмене через универсальный формат

  1. Особенности хранения и регистрации штрихкодов. В конфигурациях линейки ERP/КА штрихкоды хранятся не в реквизитах справочника Номенклатура, а в независимом регистре сведений ШтрихкодыНоменклатуры. В типовом плане обмена универсального формата для этого регистра отсутствует авторегистрация изменений. При создании или изменении штрихкода сам элемент номенклатуры не модифицируется, и запись об изменении на узле обмена не фиксируется. Кроме того, в обработчиках выгрузки EnterpriseData ранних версий выгрузка структуры штрихкодов нередко вовсе пропускалась.
  2. Несовместимость архитектуры ценообразования. В 1С:КА 2.2 цены регистрируются документом УстановкаЦенНоменклатуры и записываются в регистр сведений ЦеныНоменклатуры в разрезе видов цен. В 1С:Розница 2 ценообразование жестко завязано на магазины, правила ценообразования и специализированные виды цен (розничные, учетные). Прямого сопоставления между логикой распределения цен центральной базы КА и торговыми точками Розницы в универсальном формате по умолчанию не предусмотрено. В результате документ установки цен либо не выгружается, либо не может создать применимые цены в Рознице.
  3. Особенности настройки каналов связи (FTP и каталоги). При начальной настройке синхронизации в Рознице мастер создания обмена через пункт «Другая программа» может принудительно запрашивать сетевой или локальный каталог, блокируя выбор FTP на первом шаге. Настроить транспорт через FTP возможно: для этого сначала завершают создание настройки через временную локальную папку, после чего заходят в форму параметров созданного узла обмена и в разделе «Настройка транспорта сообщений» переключают канал на FTP. В КА 2 протокол FTP доступен штатно.

Решение 1: Доработка универсального формата через расширение конфигурации

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

Разберем по шагам, что требуется реализовать:

  1. Регистрация изменений штрихкодов. Создадим в расширении подписку на событие ПриЗаписи для набора записей регистра сведений ШтрихкодыНоменклатуры. В обработчике события программно регистрируем саму номенклатуру на узле плана обмена:
    
    Процедура Расш_ШтрихкодыНоменклатурыПриЗаписи(Источник, Отказ, Замещение) Экспорт
        Если Источник.Количество() = 0 Тогда
            Возврат;
        КонецЕсли;
        
        УзелОбмена = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоНаименованию("Розница");
        Если ЗначениеЗаполнено(УзелОбмена) Тогда
            Для Каждого Запись Из Источник Цикл
                ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, Запись.Номенклатура);
            КонецЦикла;
        КонецЕсли;
    КонецПроцедуры
    
  2. Доработка менеджера обмена. В расширении переопределяем процедуры выгрузки номенклатуры в модуле ОбменДаннымиПереносДанныхчерезУниверсальныйФормат, добавляя выборку записей регистра ШтрихкодыНоменклатуры и заполнение соответствующих XDTO-свойств пакета EnterpriseData.
  3. Трансляция цен. Дорабатываем правила загрузки на стороне 1С:Розница, сопоставляя виды цен КА с правилами ценообразования конкретного магазина при проведении документов передачи цен.

Решение 2: Адаптация типовых правил «Управление торговлей 11 — Розница 2» (КД 2.0)

Торговый контур 1С:Комплексная автоматизация 2 практически полностью идентичен функционалу 1С:Управление торговлей 11. Для связки УТ 11 и Розницы 2 фирма «1С» поставляет специализированные правила конвертации данных, созданные на базе классической технологии «Конвертация данных 2.1».

Этот обмен изначально спроектирован под нужды розничной торговли и «из коробки» корректно переносит:

  1. Штрихкоды всех видов и упаковок;
  2. Характеристики номенклатуры;
  3. Документы установки цен с учетом правил магазинов;
  4. Эквайринговые операции, розничные возвраты и отчеты о розничных продажах.

Чтобы задействовать этот механизм в КА 2, в конфигурацию (или расширение) переносится план обмена с Розницей из УТ 11. В самих правилах обмена достаточно скорректировать проверку имени конфигурации-источника, заменив УправлениеТорговлей на КомплекснаяАвтоматизация. Этот вариант значительно надежнее EnterpriseData, так как опирается на полностью отлаженную логику розничных процессов.

Альтернативные архитектурные решения

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

  1. Работа розничных точек напрямую в 1С:КА 2.2. В Комплексную автоматизацию уже встроена полнофункциональная подсистема розничных продаж: поддержка РМК (рабочего места кассира), открытие и закрытие кассовых смен, подключение торгового оборудования (фискальные регистраторы, 2D-сканеры, терминалы эквайринга). Если на торговых точках есть стабильный интернет-канал, работа кассиров в КА через тонкий клиент или веб-клиент полностью исключает рассинхронизацию цен, остатков и необходимость выгрузок.
  2. Использование автономного «1С:РМК». Если кассам требуется автономная работа при обрывах связи, вместо отдельной конфигурации «1С:Розница» на кассовых компьютерах целесообразно использовать легковесную программу 1С:Рабочее место кассира (1С:РМК). Она изначально оптимизирована для взаимодействия с бэк-офисными решениями (ERP/КА) по типовым современным протоколам и не перегружает кассовое место избыточными справочниками.

Таким образом, штатно запустить обмен между КА 2 и Розницей 2 без доработок невозможно из-за фундаментальных пропусков в типовых правилах EnterpriseData (штрихкоды и ценообразование). Для успешной интеграции следует либо доработать модуль выгрузки через расширение, либо использовать адаптированные правила обмена УТ 11 – Розница 2, либо перевести розничные точки на прямое подключение к базе КА.

← На главную