При интеграции сторонних сервисов ЭДО, таких как СБИС, с типовыми конфигурациями 1С (УТ 11.4, КА 2.4, ERP) пользователи часто сталкиваются с проблемой: после загрузки УПД и перехода в форму «Проверка поступивших шин» (или другой маркированной продукции) табличная часть документа дублируется. В одной строке отображается ваша номенклатура с пустым GTIN, а в другой — данные из системы «Честный ЗНАК». Это происходит из-за разрыва логической связи между кодом маркировки и карточкой товара в базе 1С. Рассмотрим подробно, почему это происходит и как настроить корректную работу системы.
Для начала проанализируем, как типовая конфигурация 1С:Управление торговлей 11.4 обрабатывает входящие коды маркировки. Когда мы используем встроенный 1С-ЭДО, система автоматически сопоставляет номенклатуру поставщика с вашей и записывает GTIN (глобальный номер товарной продукции) в соответствующий регистр. Однако при использовании внешних обработок (СБИС, Контур) этот процесс может нарушаться.
Проблема заключается в том, что внешняя обработка СБИС записывает коды маркировки DataMatrix в техническую таблицу документа (обычно это табличная часть ШтрихкодыУпаковок), но не всегда обновляет справочник Штрихкоды номенклатуры. Когда вы открываете окно проверки маркировки, 1С выполняет следующие действия:
GTIN из поступившего кода маркировки (это первые 14 цифр кода).GTIN в регистре сведений ШтрихкодыНоменклатуры, чтобы понять, к какой позиции вашей базы он относится.В результате мы видим две строки: вашу (без штрихкода) и «пришедшую» (со штрихкодом), и автоматического сопоставления «один к одному» не происходит.
Выясним, заполнен ли GTIN для вашей номенклатуры. Это критически важное условие для работы маркировки. Разберем, как это проверить:
EAN-13 или EAN-14, который совпадает с GTIN, присланным в УПД.Если справочник пуст, то даже при наличии кодов внутри документа Приобретение товаров и услуг, 1С не сможет «подклеить» их к нужной строке. Вы можете добавить GTIN вручную или настроить обработку СБИС так, чтобы она делала это автоматически при сопоставлении номенклатуры.
Посмотрим на настройки внешней обработки СБИС. Зачастую техподдержка оператора утверждает, что «на их стороне всё хорошо», так как данные в 1С переданы. Но важно, как именно они переданы. Проанализируем настройки:
.ext). Для корректной работы с УТ 11.4 рекомендуется использовать самые свежие версии настроек, так как структура хранения кодов в 1С менялась в последних релизах (переход от хранения в сериях к хранению в отдельных таблицах).Если обработка корректно настроена, то при загрузке УПД она должна вызывать типовой программный интерфейс 1С для регистрации кодов. Если этого не происходит, коды попадают в базу как «сырые данные», которые типовая «Проверка поступивших шин» не может распознать. Для альтернативной загрузки документов из файлов ЭДО можно использовать обработку загрузки XML-файлов УПД в документы поступления.
Рассмотрим ситуацию, когда документ уже загружен, но строки все равно дублируются. Проанализируем содержимое технических таблиц. В 1С:УТ коды маркировки хранятся в связанных таблицах. Вы можете проверить их наличие программно или через «Консоль запросов», обратившись к табличной части ШтрихкодыУпаковок документа ПриобретениеТоваровУслуг. При необходимости скорректировать связи в базе можно использовать обработку для перепривязки и исправления маркировки.
Для исправления ситуации в уже созданном документе попробуйте выполнить следующий алгоритм:
Для такой категории товаров, как шины, в 1С часто включается ведомость по сериям. Если в Виде номенклатуры настроено ведение серий, и сериями выступают «Экземпляры товаров, имеющие уникальные номера» (что соответствует кодам маркировки), то отсутствие заполненной серии в табличной части документа также приведет к невозможности сопоставления.
Выясним, передает ли СБИС данные о сериях. Если в вашей учетной политике серии обязательны при поступлении, а обработка СБИС их не заполняет, типовой механизм маркировки будет работать некорректно. В этом случае необходимо доработать модуль загрузки СБИС или использовать 1С-ЭДО для автоматизации процесса.
Если вы занимаетесь отладкой процесса, обратите внимание на то, как обработка вызывает метод записи кодов. В типовых решениях за это отвечает модуль ИнтеграцияИСМП. Коды должны быть корректно нормализованы (удалены лишние символы-разделители, такие как GS1 Group Separator), иначе поиск по GTIN может вернуть пустой результат.
Пример структуры кода, который должен быть в таблице:
// Пример структуры данных в ТЧ ШтрихкодыУпаковок
СтрокаТаблицы.Штрихкод = "0104601234567890215abcde1234"; // DataMatrix без спецсимволов
СтрокаТаблицы.Номенклатура = СсылкаНаТовар;
СтрокаТаблицы.Упаковка = СсылкаНаУпаковку;
Если поле Номенклатура в этой таблице остается пустым после загрузки из СБИС, это и является прямой причиной дублирования строк при проверке. Система видит штрихкод, но не «знает», к какой строке документа его привязать.
Резюме: Для решения проблемы необходимо обеспечить наличие GTIN в справочнике штрихкодов 1С до момента загрузки или в процессе загрузки через СБИС. Также следует убедиться, что используемая версия обработки СБИС поддерживает специфику релиза УТ 11.4.14 и корректно заполняет связи номенклатуры с кодами в табличной части документа.