Ошибка «Не удалось распределить код маркировки по товарам»: как исправить

· 6 мин

Содержание

Ошибка означает одно: 1С получила коды маркировки (обычно после сканирования или загрузки из ЭДО), но не смогла сопоставить их со строками товаров в документе. Чаще всего виноваты «слипшиеся» коды без разделителей GS, лишние или недостающие коды либо неверный тип штрихкода в настройках сканера.

Сообщение Не удалось распределить код маркировки по товарам выскакивает при проведении или при нажатии «Проверить и распределить» — в реализации, поступлении, чеке ККТ, документе вывода из оборота. Ниже — быстрая диагностика по симптому и три рабочих способа: от безопасного (форма подбора) до ручной привязки кода к строке.

Почему 1С не удаётся распределить коды маркировки по товарам

Коды не «раскладываются» по строкам, когда количество, содержимое или формат кодов не совпадает с тем, что 1С ожидает увидеть в документе.

Типовые причины:

  • 🔢 Количество не сходится. Отсканировано кодов больше или меньше, чем указано в строке товара. На 5 единиц в документе — 4 кода, распределять нечего.
  • 🧩 Нет разделителей GS. Сканер или файл отдал коды одной «простынёй» без служебных символов GS (). 1С не понимает, где кончается один код и начинается другой.
  • 🏷️ Код не тот номенклатуры. GTIN внутри кода не привязан к карточке товара из строки. Коды физически есть, но «не про этот товар».
  • 📷 Сканер настроен на другой тип. Считыватель отдаёт DataMatrix как обычный EAN-13 или режет часть символов — 1С получает мусор.
  • 🔁 Дубли. Один и тот же код попал в документ дважды (пересканировали) — распределение упирается в конфликт.
  • 🐌 Устаревший релиз или драйвер ККТ. Старая версия конфигурации / прошивка кассы неверно парсит поле маркировки.

Первым делом посмотрите на числа: сколько единиц в строке и сколько кодов реально считано. 80% случаев — это банальное несовпадение количества.

Диагностика: выберите симптом

Способ 1. Форма подбора и проверки маркировки

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

  1. Откройте документ (реализация, поступление, чек).
  2. Нажмите «Проверить и распределить» или «Штрихкоды маркировки → Подбор» (название кнопки зависит от конфигурации: БП 3.0, УТ 11, Розница).
  3. В открывшейся форме сканируйте коды по одному в поле ввода — 1С сама раскладывает их по строкам и подсвечивает совпадения.
  4. Красным помечаются коды, которым не нашлось товара; зелёным — распределённые.
  5. Нажмите «Записать и закрыть», затем проведите документ.

Если сканируете в поле формы, а не в табличную часть, разделители GS почти всегда обрабатываются корректно — это снимает добрую половину ошибок.

Проверка перед распределением кодов
Выполнено: 0 / 5

Способ 2. Очистка и повторный ввод кодов

Когда в документе накопились «битые» или частично распределённые коды, проще обнулить и ввести заново.

  • Откройте форму штрихкодов маркировки по строке товара.
  • Удалите все ранее введённые коды (кнопка «Очистить» или Delete по каждой позиции).
  • Убедитесь, что количество в строке товара стоит верное.
  • Отсканируйте коды заново — по одному, дожидаясь отклика 1С после каждого.

Если коды приходят из файла (загрузка из ЭДО, УПД с маркировкой), проверьте, что в исходном документе поставщика количество кодов совпадает с количеством в накладной. Расхождение на стороне поставщика тоже даёт эту ошибку — тогда запрашивайте корректный УПД.

Способ 3. Разделители GS и настройка сканера штрихкодов

Код DataMatrix содержит служебные символы-разделители GS (Group Separator, ASCII 29). Если сканер их «проглатывает», коды слипаются и 1С не может их разобрать.

Что проверить в настройках считывателя:

Параметр сканераКак должно быть
Тип кода DataMatrix / GS1Включён (Enable)
Передача символа GSВключена — эмуляция GS как ]d2 или Ctrl-символ
Суффикс / префиксТолько Enter (CR), без лишних символов
Раскладка клавиатурыСовпадает с системной (частая причина «кракозябр»)
  • 🔧 В драйвере сканера (Honeywell, Zebra, АТОЛ и др.) найдите пункт «GS1 DataMatrix» и разрешите передачу разделителя группы.
  • ⌨️ Если сканер в режиме эмуляции клавиатуры — переключите системную раскладку на английскую перед сканированием, иначе символы искажаются.
  • 🧪 Проверьте сканер в «Блокноте»: считайте код — между блоками данных должны быть невидимые разделители (курсор «перепрыгивает»), а не сплошная строка.

Не отключайте проверку маркировки, чтобы «просто провести документ» — непереданные в Честный ЗНАК коды заблокируют оборот товара.

Если не помогло: ручная привязка кода к карточке товара

Когда автоматика упорно не раскладывает коды, привяжите GTIN вручную.

  1. Откройте карточку номенклатуры → «Штрихкоды».
  2. Сверьте GTIN из кода маркировки (первые 14 цифр после 01) с GTIN в карточке.
  3. Если не совпадает — добавьте правильный GTIN в штрихкоды товара.
  4. Вернитесь в документ и распределите коды заново.

Дополнительно, если ошибка держится на конкретной базе:

  • Обновите конфигурацию до актуального релиза — блок маркировки регулярно правят.
  • Обновите драйвер ККТ и прошивку кассы (для чеков с маркировкой).
  • Очистите кэш клиента: закрытие 1С и запуск с параметром /ClearCache.
  • Проверьте, что в настройках включён обмен с ГИС МТ (Честный ЗНАК) и подключён УТМ, если работаете с ЕГАИС-алкоголем.
Какой у вас симптом ошибки?

Как предотвратить ошибку в будущем

  • ✅ Сканируйте коды через форму подбора, а не напрямую в табличную часть.
  • ✅ Держите конфигурацию и драйверы оборудования в актуальных релизах.
  • ✅ Один раз настройте передачу GS в сканере — и забудете про «слипшиеся» коды.
  • ✅ Перед проведением сверяйте количество товара и количество кодов.
  • ✅ Для приёмки по ЭДО проверяйте комплектность кодов в УПД до проведения.

Частые вопросы

Что значит «не удалось распределить код маркировки по товарам»?
1С получила коды маркировки, но не смогла сопоставить их со строками товаров. Обычно из-за несовпадения количества, отсутствия разделителей GS или неверного GTIN.
Как исправить ошибку быстрее всего?
Сверьте количество кодов и товара, затем вводите коды через форму «Проверить и распределить», а не сканируйте прямо в табличную часть.
Что такое разделители GS и при чём тут они?
GS (Group Separator) — служебные символы внутри DataMatrix, разделяющие блоки данных. Если сканер их не передаёт, коды слипаются и 1С не может их разобрать. Решение — включить передачу GS в драйвере сканера.
Можно ли отключить проверку маркировки, чтобы провести документ?
Технически да, но нельзя: непереданные в Честный ЗНАК коды заблокируют дальнейший оборот товара. Ошибку нужно устранить, а не обходить.
Ошибка появляется при загрузке из ЭДО — что делать?
Скорее всего, у поставщика в УПД число кодов не совпадает с количеством товара. Запросите корректный документ.
Помогает ли обновление 1С?
Да, часто. Блок маркировки регулярно дорабатывают, и на старом релизе коды могут парситься неверно. Обновите конфигурацию и драйвер ККТ.