Как настроить оптовые продажи маркированной продукции с передачей кодов через ЭДО в «1С:Розница» 2.3 и 3.0?

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

В практике автоматизации торговых точек часто возникает ситуация, когда розничный магазин периодически осуществляет мелкооптовые отгрузки юридическим лицам и индивидуальным предпринимателям. Установка тяжеловесных конфигураций вроде «1С:Управление торговлей» или «1С:ERP» для десятка накладных в месяц нецелесообразна и усложняет работу кассиров. Однако с введением обязательной маркировки («Честный ЗНАК») возникла жесткая необходимость передавать коды маркировки (DataMatrix) в оптовом звене через систему электронного документооборота (ЭДО).

В этой статье мы подробно разберем, как реализовать оптовые продажи маркированных товаров в различных редакциях конфигурации «1С:Розница», проанализируем технические ограничения версии 2.3 и рассмотрим готовые механизмы в версии 3.0.

Оптовые продажи в «1С:Розница 3.0» (Штатный функционал)

Начнем с актуальной редакции «1С:Розница 3.0». Данная конфигурация разработана на единой кодовой базе с «1С:Управление нашей фирмой» (УНФ). Это означает, что весь базовый B2B-функционал, включая оптовые продажи и полноценную интеграцию с ГИС МТ и ЭДО, теперь доступен «из коробки».

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

  1. Создание документа отгрузки: Для оформления продажи контрагенту используется документ РасходнаяНакладная. Найти его можно в разделе «Продажи». При заполнении документа указывается покупатель (юрлицо или ИП) и договор с ним.
  2. Подбор и проверка кодов маркировки: В табличной части документа на вкладке «Товары» при выборе маркируемой продукции появляется кнопка со специальным индикатором (красный/зеленый щит). Нажав на нее, мы открываем стандартную форму «Подбор и проверка маркируемой продукции». Здесь необходимо сосканировать коды DataMatrix с упаковок товаров. Система автоматически выполнит онлайн-проверку статусов кодов в системе «Честный ЗНАК» и зарезервирует их под текущий документ.
  3. Объемно-сортовой учет (ОСУ): Если вы торгуете продукцией, для которой на законодательном уровне временно или постоянно разрешен объемно-сортовой учет (например, молочная продукция или упакованная вода), сканировать каждую единичную марку не обязательно. Программа позволяет указать только GTIN и количество товара для передачи этих сведений в электронный документ.
  4. Отправка УПД через ЭДО: После проведения документа РасходнаяНакладная в нижней части формы нажимаем кнопку «ЭДО» -> «Отправить электронный документ». Программа автоматически формирует XML-файл Универсального передаточного документа (УПД), в который упаковывает все сосканированные коды маркировки или данные ОСУ. После подписания УПД с обеих сторон вашей квалифицированной электронной подписью (УКЭП), оператор ЭДО сам передаст эти сведения в систему «Честный ЗНАК», и товары перейдут на баланс покупателя.
  5. Особый случай — Меховые изделия: Помните, что передача сведений по меховым изделиям (КиЗ) регулируется отдельно. Если вы отгружаете мех, на основании расходной накладной необходимо создать документ ОтгрузкаТоваровИСМП для прямой отправки данных в систему маркировки.

Оптовые продажи в «1С:Розница 2.3» (Обход ограничений и доработка)

С версией «1С:Розница 2.3» ситуация обстоит принципиально иначе. Данная конфигурация исторически создавалась исключительно под розничный контур (B2C). Фирма «1С» прекратила активное развитие функционала ветки 2.3, выпуская только критически важные обновления для поддержки изменений законодательства.

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

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

Архитектура работы расширения для «1С:Розница 2.3»

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

  1. Модификация формы документа: К документу РеализацияТоваров добавляется кнопка вызова стандартной формы подбора и проверки маркированной продукции (которая используется при приемке или розничных продажах).
  2. Запись считанных кодов: При сканировании кодов DataMatrix в форме проверки расширение должно перехватить событие записи данных и связать считанные штрихкоды упаковок с текущим документом реализации. Данные сохраняются в подчиненном регистре сведений, например, в ШтрихкодыУпаковокТоваров.
  3. Корректировка модуля формирования УПД: При отправке документа по ЭДО стандартный общий модуль формирования электронных документов игнорирует марки для обычной реализации. Расширение должно перехватить процедуру подготовки XML-структуры УПД и принудительно внедрить в нее таблицу маркированных упаковок, привязанных к документу.

Давайте посмотрим на пример программного перехвата формирования XML-данных в расширении для добавления кодов маркировки:


&Вместо("СформироватьУПД")
Процедура Расш_СформироватьУПД(ПараметрыДокумента, ДанныеЭДО)
    // Вызываем оригинальный алгоритм формирования документа
    ПродолжитьВызов(ПараметрыДокумента, ДанныеЭДО);
    
    // Проверяем, является ли документ реализацией и содержит ли маркируемые товары
    Если ТипЗнч(ПараметрыДокумента.Источник) = Тип("ДокументСсылка.РеализацияТоваров") Тогда
        // Проанализируем наличие кодов маркировки в регистре для данного документа
        ТаблицаМарок = ПолучитьМаркиДокумента(ПараметрыДокумента.Источник);
        Если ТаблицаМарок.Количество() > 0 Тогда
            // Внедряем коды маркировки в структуру XML-документа перед отправкой
            ДобавитьКодыМаркировкиВСтруктуруУПД(ДанныеЭДО, ТаблицаМарок);
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры

Также важно учесть ситуацию, когда оптовый покупатель (например, школа, больница или производственное предприятие) приобретает товар не для дальнейшей перепродажи, а для собственных нужд. В этом случае продавец обязан самостоятельно вывести товар из оборота. Для этого расширение должно позволять создавать документ ВыводИзОборотаИСМП непосредственно на основании проведенного документа РеализацияТоваров с автоматическим переносом сосканированных кодов. Для решения этой задачи можно использовать готовое расширение для формирования УПД с маркировкой и вывода из оборота в 1С:Розница 2.3.

Общие требования к настройке системы

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

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

Мы подробно проанализировали особенности реализации оптовых продаж в обеих версиях программы «1С:Розница».

Если перед вами стоит задача регулярной оптовой отгрузки маркированных товаров, настоятельно рекомендуем рассмотреть переход на редакцию «1С:Розница 3.0». Так как она базируется на коде УНФ, вы получите полностью поддерживаемый разработчиками функционал опта, ЭДО и маркировки, который будет оперативно обновляться вслед за частыми изменениями законодательства. Для переноса накопленных документов и справочников в новую базу вы можете изучить раздел с решениями по переносу данных в 1С:Розницу.

Использование сторонних расширений для «1С:Розница 2.3» — это рабочий, но временный компромисс. Он требует постоянного контроля со стороны штатного программиста или обслуживающей ИТ-компании, поскольку любое обновление конфигурации или форматов обмена со стороны ФНС может нарушить работу кастомного механизма передачи марок.

← На главную