Как настроить автоматическую отправку ЭДО в обособленные подразделения торговой сети из 1С?

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

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

Анализ проблемы маршрутизации в роуминге

Рассмотрим стандартную ситуацию: у головной организации торговой сети есть основной идентификатор (ID) в системе ЭДО. Когда вы настраиваете роуминг, вы чаще всего связываете свой аккаунт именно с этим ID. По умолчанию операторы ЭДО в роуминге передают документ «от компании к компании». Проблема заключается в том, что технология РОСЭУ, на которой базируется межведомственный обмен, не всегда прозрачно описывает передачу идентификаторов конкретных подразделений (департаментов) внутри аккаунта получателя.

Проанализируем, почему торговая сеть утверждает, что «другие настроили сами». Система Контур.Диадок, которую использует большинство сетей, умеет автоматически распределять входящие документы по папкам подразделений, если в самом XML-файле УПД содержатся определенные «метки». Наша задача — научить 1С правильно расставлять эти метки.

Шаг 1. Корректное заполнение КПП грузополучателя

Выясним первичную причину, по которой документ попадает в «голову». Система распределения документов в ЭДО в первую очередь смотрит на связку ИНН/КПП. Если в вашем документе в качестве грузополучателя указан ИНН сети и КПП её головного офиса, документ никогда не попадет в магазин автоматически.

Разберем, как это должно быть настроено в 1С:

  1. В справочнике Контрагенты создадим для торговой сети головную организацию.
  2. Внутри карточки контрагента (или в подчиненном справочнике Обособленные подразделения, в зависимости от конфигурации) создадим каждую точку доставки (магазин).
  3. Для каждого магазина обязательно укажем его уникальный КПП и фактический Адрес доставки.

При формировании реализации в 1С крайне важно, чтобы в поле Покупатель стояла головная организация, а в поле Грузополучатель — именно то обособленное подразделение, куда едет товар. В этом случае в XML-файл УПД в блок ГрузПолуч попадет КПП магазина. Диадок, получив такой файл, увидит соответствие КПП и переместит документ в нужное подразделение.

Шаг 2. Маршрутизация по кодам GLN (Global Location Number)

Посмотрим на ситуацию со стороны EDI-технологий. Торговые сети идентифицируют свои магазины по кодам GLN. Если вы используете интеграцию EDI и ЭДО, то идентификатор GLN является связующим звеном. Рассмотрим, как передать этот код в электронном документе.

Многие современные модули ЭДО для 1С позволяют добавлять дополнительные реквизиты в XML. Нам необходимо убедиться, что код GLN точки доставки передается в атрибутах документа. Проанализируем программный код, который отвечает за наполнение структуры XML. Нам нужно найти место, где формируются данные о точках доставки, и добавить передачу идентификатора.


// Пример логики для расширения обработки ЭДО
Если ЗначениеЗаполнено(ТекДок.ТочкаДоставки.КодGLN) Тогда
    НоваяСтрокаИнфПоля = СтруктураДанных.ДополнительныеРеквизиты.Добавить();
    НоваяСтрокаИнфПоля.Имя = "GLN_Receiver";
    НоваяСтрокаИнфПоля.Значение = ТекДок.ТочкаДоставки.КодGLN;
КонецЕсли;

Шаг 3. Использование информационных полей (ИнфПолФХЖ)

Разберем самый надежный способ «достучаться» до системы автоматизации торговой сети — использование тега ИнфПолФХЖ1 (Информационное поле факта хозяйственной жизни). Этот тег предназначен для передачи произвольных данных, которые не предусмотрены основным форматом ФНС, но критически важны для бизнес-логики.

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

Чтобы реализовать это в 1С, необходимо внести изменения в процедуру формирования электронного документа. Обычно это делается через механизм Переопределяемых модулей или с помощью Расширений.


Процедура ПриФормированииЭлектронногоДокумента(ДокументОбъект, СтруктураФайла)
    // Добавляем информацию о подразделении для маршрутизации в Диадоке
    НовыйЭлемент = СтруктураФайла.ИнформационноеПоле.Добавить();
    НовыйЭлемент.Идентификатор = "Подразделение";
    НовыйЭлемент.Значение = ДокументОбъект.Грузополучатель.Код;
КонецПроцедуры

Шаг 4. Настройка связки EDI и ЭДО в одном операторе

Проанализируем вопрос автора о том, поможет ли переход к одному оператору (например, перевод ЭДО в Контур, если EDI уже там). Да, это значительно упростит задачу. Когда и EDI (заказы), и ЭДО (УПД) находятся «внутри» одной экосистемы, оператор может использовать технологию DocumentID или ChainID.

В этом случае УПД создается «на основании» EDI-заказа. Документ автоматически наследует все атрибуты цепочки, включая идентификатор подразделения получателя. Внутри одного оператора маршрутизация работает практически бесшовно, так как системе не нужно гадать по КПП — она уже знает, к какому заказу и какому магазину привязан этот документ.

Шаг 5. Работа с правилами маршрутизации на стороне получателя

Выясним, что может сделать сама торговая сеть. Представители сети часто говорят «настраивайте сами», но в системе Диадок есть мощный инструмент — Правила маршрутизации. Рассмотрим, как это работает:

  1. Получатель (сеть) настраивает правило: «Если во входящем УПД в поле Грузополучатель указан адрес 'г. Москва, ул. Ленина, д. 1', переместить его в подразделение 'Магазин №5'».
  2. Для этого от вас требуется только одно — чтобы адрес или КПП в вашем XML-файле символ в символ совпадал с тем, что заведено у них в справочнике.

Важный совет: Попросите у технической поддержки сети их «Гайдлайн по заполнению УПД». Там всегда указано, по какому именно полю (КПП, адрес или доп. реквизит) их система понимает, куда положить документ.

Выводы и рекомендации

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

  1. Проверьте, что в 1С в справочнике Контрагенты у каждого магазина заполнен правильный КПП.
  2. Убедитесь, что в документе реализации в качестве Грузополучателя выбрано именно обособленное подразделение (магазин), а не головной офис.
  3. Проанализируйте XML-файл, который генерирует ваша 1С. В блоке ГрузПолуч должен быть указан КПП магазина.
  4. Если КПП недостаточно, настройте через программиста передачу внутреннего номера магазина в поле ИнфПолФХЖ1.
  5. Если объем документов большой, рассмотрите переход на работу с единым оператором для EDI и ЭДО или использование архива ЭДО, чтобы исключить сложности роуминга.

Помните, что в роуминге «магии» не бывает: если вы не передали уникальный признак магазина в структуре XML, оператор получателя просто не будет знать, в какую папку положить ваш документ, и по умолчанию отправит его в «Голову».

← На главную