Как настроить уникальное кодирование адресов доставки в «1С:Управление торговлей 11» без изменения конфигурации?

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

При автоматизации оптовой торговли и логистики в программе «1С:Управление торговлей 11» (УТ 11) пользователи часто сталкиваются со следующей проблемой: по умолчанию адреса доставки партнеров хранятся в виде текстовых строк в составе контактной информации. Однако для интеграции с внешними службами доставки, складскими системами (WMS), маркетплейсами или EDI-провайдерами требуется, чтобы каждый адрес имел свой собственный уникальный код (идентификатор). При этом крайне желательно решить эту задачу типовыми средствами, без снятия конфигурации с поддержки. Для автоматизации работы с торговыми площадками в режиме реального времени применяется интеграция 1С с маркетплейсами Ozon, Wildberries, Яндекс.Маркет.

В этой статье мы подробно и по шагам разберем несколько эффективных способов кодирования адресов доставки в УТ 11, начиная от использования новейших типовых механизмов и заканчивая методологическими приемами настройки нормативно-справочной информации (НСИ).

---

Способ 1. Использование встроенного справочника «Точки доставки» (для современных релизов УТ 11.5)

Если вы работаете на актуальных релизах конфигурации (начиная с версии 11.5.21 и выше), фирма «1С» уже решила эту проблему на уровне платформы. В системе появился полноценный справочник Точки доставки.

Давайте разберем, как активировать и использовать этот механизм:

  1. Перейдем в раздел НСИ и администрирование – Настройка НСИ и разделов – Склад и доставка.
  2. В блоке настроек доставки активируем функционал управления доставкой (версии 2.5).
  3. После этого в карточках партнеров и складов станет доступен для заполнения полноценный справочник Точки доставки.

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

---

Способ 2. Методологическое разделение на «Партнеров» и «Контрагентов»

Этот способ идеально подходит, если вы работаете на более ранних релизах УТ 11, где справочник точек доставки еще отсутствует. Часто пользователи путают понятия партнера и контрагента, что приводит к созданию лишних дублей. Давайте разберем методологически верную схему работы системы.

В УТ 11 заложено четкое разделение сущностей:

Выясним, как использовать эту архитектуру для кодирования адресов:

  1. Включим независимое ведение партнеров и контрагентов в разделе НСИ и администрирование – Настройка НСИ и разделов – CRM и маркетинг (флаг Независимо вести партнеров и контрагентов).
  2. Для одного юридического лица (Контрагента) создадим несколько подчиненных управленческих карточек в справочнике Партнеры — по одной на каждый фактический адрес доставки (например: "ООО Ромашка (Магазин №1)", "ООО Ромашка (Склад Север)").
  3. У каждого партнера в системе будет свой собственный уникальный Код, генерируемый программой автоматически. При этом у них не будет проблем с дублированием ИНН, так как ИНН привязывается только к головному Контрагенту.
  4. В документах отгрузки в поле "Клиент" мы выбираем конкретного Партнера (со своим кодом и адресом), а в поле "Контрагент" — головное юрлицо для расчетов.

---

Способ 3. Использование дополнительных реквизитов с типом «Дополнительное значение»

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

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

  1. Перейдем в раздел НСИ и администрирование – Общие настройки – Дополнительные реквизиты и сведения.
  2. Найдем в списке справочник Партнеры и добавим новый дополнительный реквизит, например, назвав его "Адрес доставки (с кодом)".
  3. Критически важно выбрать тип значения реквизита: Дополнительное значение.
  4. При выборе этого типа система создает под этот реквизит подчиненный справочник Значения дополнительных реквизитов. Каждый элемент этого подчиненного справочника содержит два ключевых поля: Наименование (куда мы записываем сам адрес доставки) и Код (который платформа присваивает автоматически).

Таким образом, мы получаем готовый классификатор адресов доставки с автонумерацией кодов для каждого партнера без написания кода.

---

Способ 4. Программная генерация составного кода для интеграций

Рассмотрим ситуацию, когда адреса уже заведены в базу как контактная информация (КИ), и нам нужно выгрузить их во внешнюю систему с уникальными кодами, не меняя структуру данных в 1С. Мы можем генерировать уникальный код на лету при выгрузке данных. Если такую передачу требуется выполнять регулярно, её можно автоматизировать с помощью программы для автоматизации обмена данными МС:Автообмен.

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

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


// Пример генерации уникального кода на основе GUID партнера и кода вида КИ
УникальныйКодАдреса = XMLСтрока(ПартнерСсылка) + "_" + Строка(КонтактнаяИнформацияСтрока.Вид.Код);

Или более простой вариант с использованием читаемого кода партнера:


// Пример генерации кода на основе текстового кода партнера
УникальныйКодАдреса = СокрЛП(ПартнерКод) + "_" + СокрЛП(КонтактнаяИнформацияСтрока.Вид.Код);

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

---

Способ 5. Использование кода GLN для EDI-обмена

Если задача кодирования адресов возникла из-за требований торговых сетей и EDI-провайдеров (таких как Контур.EDI, СБИС, CISLink и др.), то изобретать велосипед не нужно. В международной практике для идентификации участников цепи поставок и их физических адресов используется код GLN (Global Location Number).

В типовой конфигурации УТ 11 этот функционал уже предусмотрен:

  1. В карточке партнера или контрагента предусмотрено штатное поле для ввода кода GLN.
  2. Если у одного клиента несколько точек доставки, коды GLN настраиваются для каждой точки в подчиненных справочниках.
  3. Интеграционные модули EDI автоматически сопоставляют входящие заказы (ORDERS) с нужными адресами доставки в вашей базе 1С именно по коду GLN, передаваемому сетью.

---

Способ 6. Привязка адресов доставки к договорам контрагентов

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

Разберем, как это работает:

---

Резюме и рекомендации

Мы проанализировали шесть различных подходов к кодированию адресов в УТ 11. Какой из них выбрать?

← На главную