Ошибка «Не удалось распределить код маркировки по товарам»: как исправить
Содержание
Ошибка означает одно: 1С получила коды маркировки (обычно после сканирования или загрузки из ЭДО), но не смогла сопоставить их со строками товаров в документе. Чаще всего виноваты «слипшиеся» коды без разделителей GS, лишние или недостающие коды либо неверный тип штрихкода в настройках сканера.
Сообщение Не удалось распределить код маркировки по товарам выскакивает при проведении или при нажатии «Проверить и распределить» — в реализации, поступлении, чеке ККТ, документе вывода из оборота. Ниже — быстрая диагностика по симптому и три рабочих способа: от безопасного (форма подбора) до ручной привязки кода к строке.
Почему 1С не удаётся распределить коды маркировки по товарам
Коды не «раскладываются» по строкам, когда количество, содержимое или формат кодов не совпадает с тем, что 1С ожидает увидеть в документе.
Типовые причины:
- 🔢 Количество не сходится. Отсканировано кодов больше или меньше, чем указано в строке товара. На 5 единиц в документе — 4 кода, распределять нечего.
- 🧩 Нет разделителей GS. Сканер или файл отдал коды одной «простынёй» без служебных символов
GS(). 1С не понимает, где кончается один код и начинается другой. - 🏷️ Код не тот номенклатуры. GTIN внутри кода не привязан к карточке товара из строки. Коды физически есть, но «не про этот товар».
- 📷 Сканер настроен на другой тип. Считыватель отдаёт DataMatrix как обычный EAN-13 или режет часть символов — 1С получает мусор.
- 🔁 Дубли. Один и тот же код попал в документ дважды (пересканировали) — распределение упирается в конфликт.
- 🐌 Устаревший релиз или драйвер ККТ. Старая версия конфигурации / прошивка кассы неверно парсит поле маркировки.
Первым делом посмотрите на числа: сколько единиц в строке и сколько кодов реально считано. 80% случаев — это банальное несовпадение количества.
Способ 1. Форма подбора и проверки маркировки
Самый безопасный путь — не сканировать коды прямо в табличную часть, а завести их через специальную форму.
- Откройте документ (реализация, поступление, чек).
- Нажмите «Проверить и распределить» или «Штрихкоды маркировки → Подбор» (название кнопки зависит от конфигурации: БП 3.0, УТ 11, Розница).
- В открывшейся форме сканируйте коды по одному в поле ввода — 1С сама раскладывает их по строкам и подсвечивает совпадения.
- Красным помечаются коды, которым не нашлось товара; зелёным — распределённые.
- Нажмите «Записать и закрыть», затем проведите документ.
Если сканируете в поле формы, а не в табличную часть, разделители GS почти всегда обрабатываются корректно — это снимает добрую половину ошибок.
Способ 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 вручную.
- Откройте карточку номенклатуры → «Штрихкоды».
- Сверьте GTIN из кода маркировки (первые 14 цифр после
01) с GTIN в карточке. - Если не совпадает — добавьте правильный GTIN в штрихкоды товара.
- Вернитесь в документ и распределите коды заново.
Дополнительно, если ошибка держится на конкретной базе:
- Обновите конфигурацию до актуального релиза — блок маркировки регулярно правят.
- Обновите драйвер ККТ и прошивку кассы (для чеков с маркировкой).
- Очистите кэш клиента: закрытие 1С и запуск с параметром
/ClearCache. - Проверьте, что в настройках включён обмен с ГИС МТ (Честный ЗНАК) и подключён УТМ, если работаете с ЕГАИС-алкоголем.
Как предотвратить ошибку в будущем
- ✅ Сканируйте коды через форму подбора, а не напрямую в табличную часть.
- ✅ Держите конфигурацию и драйверы оборудования в актуальных релизах.
- ✅ Один раз настройте передачу GS в сканере — и забудете про «слипшиеся» коды.
- ✅ Перед проведением сверяйте количество товара и количество кодов.
- ✅ Для приёмки по ЭДО проверяйте комплектность кодов в УПД до проведения.