Торговля и Склад · 11 мин
Штрих-код в 1С: как работает сканирование и почему товар не находится
Как работает штрих-код в 1С: принципы сканирования, типы штрих-кодов EAN-13 и DataMatrix, настройка сканера, поиск номенклатуры и типичные ошибки.
Штрих-код в 1С — это не самостоятельный механизм, а связка из трёх элементов: сканера, который преобразует чёрно-белый рисунок в строку символов, драйвера, который передаёт эту строку в программу, и справочника номенклатуры, где штрих-код привязан к конкретному товару. Если хотя бы один элемент настроен неверно, сканирование «не работает», хотя по отдельности всё исправно.
Понимание того, как проходит сигнал от сканера до документа, экономит часы поиска проблемы. Сканер физически не «знает» ни о товаре, ни о 1С: он просто вводит последовательность цифр, как клавиатура. Всю логику — поиск товара, подстановку в документ, контроль количества — выполняет конфигурация 1С по своим правилам.
Ниже разобраны принципы работы, режимы подключения сканера, типы штрих-кодов, настройка в типовых конфигурациях и типичные сбои с конкретными способами диагностики.
Как сканер и 1С обмениваются данными
Физически сканер считывает отражённый свет от штрихов и декодирует его в строку — например, «4601234567890». Дальше эта строка попадает в 1С одним из двух способов. В режиме эмуляции клавиатуры (USB HID) сканер «печатает» цифры в активное поле ввода, как если бы их набрали руками, и завершает ввод символом Enter. В режиме эмуляции COM-порта сканер передаёт данные через виртуальный последовательный порт, а 1С получает их через драйвер и сама решает, что с ними делать.
Разница принципиальна. Клавиатурный режим проще: не нужны драйверы, работает везде, где есть курсор. Но если фокус ввода стоит не в том поле, штрих-код «напечатается» в произвольное место — в комментарий, в поле количества, в браузер. COM-режим надёжнее: 1С перехватывает событие сканирования независимо от того, где стоит курсор, и корректно обрабатывает код даже при открытом диалоге.
Какие штрих-коды используются в 1С
В торговом учёте чаще всего встречаются линейные коды EAN-13 (13 цифр, стандарт розничной маркировки товаров) и EAN-8 для мелкой упаковки. Внутри предприятия применяют Code 128 — он позволяет кодировать не только цифры, но и буквы, поэтому удобен для внутренних артикулов, серийных номеров и складских ячеек.
Отдельная категория — двумерный код DataMatrix, обязательный для маркированных товаров (обувь, табак, молочная продукция, лёгкая промышленность и другие группы по системе «Честный ЗНАК»). DataMatrix содержит не только код товара, но и индивидуальный серийный номер, поэтому его обработка в 1С идёт по другим правилам: код проверяется через систему маркировки, а не просто ищется в справочнике.
| Тип кода | Состав | Где применяется |
|---|---|---|
| EAN-13 | 13 цифр | Розничные товары, весовой товар (с префиксом) |
| EAN-8 | 8 цифр | Малогабаритная упаковка |
| Code 128 | Цифры и буквы | Внутренние артикулы, ячейки склада, документы |
| DataMatrix | До нескольких десятков символов | Маркировка «Честный ЗНАК» |
Настройка сканера в типовой конфигурации
В конфигурациях «Управление торговлей», «Розница», «Комплексная автоматизация» подключение выполняется через раздел «Администрирование» → «Подключаемое оборудование» (в некоторых версиях — «Настройка подключаемого оборудования» в разделе «Настройки РМК и оборудования»). Для клавиатурного режима часто достаточно просто включить сканер в USB и проверить ввод в Блокноте: если цифры появляются и строка завершается переводом строки — сканер готов к работе.
Для COM-режима потребуется драйвер «1С:Сканер штрихкода» из библиотеки подключаемого оборудования (БПО). В настройках указывают порт, скорость и суффикс. После добавления устройства его нужно «подключить» в списке оборудования и проверить тестом устройства: драйвер должен сообщить, что сканер обнаружен.
- 1Переведите сканер в нужный режим (USB HID или эмуляция COM) по инструкции производителя — обычно сканированием служебного кода из руководства
- 2Откройте Блокнот и отсканируйте любой код: убедитесь, что цифры вводятся полностью и строка завершается переходом на новую
- 3В 1С откройте «Администрирование» → «Подключаемое оборудование», добавьте сканер с нужным драйвером
- 4Выполните «Тест устройства» и нажмите «Подключить»
- 5Откройте документ продажи и отсканируйте товар — строка с номенклатурой должна добавиться автоматически
Как 1С ищет товар по штрих-коду
При сканировании конфигурация обращается к регистру сведений «Штрихкоды номенклатуры» (название может отличаться в разных конфигурациях). Если код найден, в документ подставляются номенклатура, характеристика и упаковка, привязанные к этому коду. Один товар может иметь несколько штрих-кодов — для разных упаковок: штука, короб, паллета. Тогда сканирование кода короба добавляет в документ сразу соответствующее количество единиц.
Если код не найден, поведение зависит от настроек: программа либо выдаёт сообщение «Штрих-код не найден», либо предлагает создать новую карточку товара с этим кодом. В рознице удобен второй вариант при приёмке нового ассортимента, но на оптовом складе автоматическое создание карточек лучше отключить — иначе справочник быстро засоряется дублями с одним лишь штрих-кодом без характеристик и цен.
Весовой товар и штрих-коды с префиксом
Товары, которые взвешиваются на весах с печатью этикеток, используют штрих-коды переменной длины смысловой части: первые цифры — префикс весового товара (обычно начинается с «2»), затем код товара (PLU), затем вес или сумма, последняя цифра — контрольная. 1С распознаёт такой код по префиксу, который задаётся в настройках обмена с весами, и раскладывает его на составляющие: находит товар по PLU и подставляет вес в количество.
Типичная проблема здесь — рассинхронизация списка PLU между весами и 1С. Товар выгружен в 1С под одним кодом, а в весах числится под другим. Результат: этикетка сканируется, но товар не находится или подставляется не тот. Лечится повторной полной выгрузкой товаров в весы и сверкой нескольких позиций вручную.
Типичные сбои и их диагностика
Большинство проблем со сканированием сводится к нескольким повторяющимся сценариям. Сканер «пищит», но в 1С ничего не происходит — проверьте ввод в Блокноте: если и там пусто, проблема в сканере или кабеле; если в Блокноте цифры есть, а в 1С нет — фокус ввода не в поле поиска или используется COM-режим без подключённого драйвера.
Код вводится, но товар не найден — откройте регистр штрих-кодов и поищите код вручную. Часто обнаруживается, что код привязан к другой карточке (дубль), записан с ошибкой при ручном вводе или у поставщика на этикетке код отличается от кода в накладной. Русская раскладка клавиатуры тоже способна испортить ввод: некоторые сканеры в режиме HID передают символы через раскладку ОС, и цифры превращаются в буквы.
Как проверить результат
Цифры кода полностью, строка завершается переводом
Цифры обрезаны, появляются буквы или лишние символы
Строка с товаром добавляется, количество и упаковка верны
Сообщение «не найден» или подставилась другая номенклатура
Находится товар и подставляется вес с этикетки
Товар не найден или количество равно 1
Статус кода маркировки определён, код принят
Ошибка разбора DataMatrix или «код не найден в обороте»
Печать этикеток и внутренние штрих-коды
Для товаров без заводского штрих-кода 1С умеет генерировать внутренние коды и печатать этикетки — через обработку «Печать этикеток и ценников» в разделе закупок или склада. Внутренние коды обычно формируются в диапазоне, начинающемся с префикса «2» или другого зарезервированного, чтобы не пересекаться с заводскими EAN-13 поставщиков.
Перед массовой печатью проверьте качество на одном листе: бледная печать, глянцевая этикетка и слишком мелкий штрих-код — три главные причины нечитаемости на кассе. Термопринтер этикеток должен печатать с достаточной плотностью, а ширина самого узкого штриха в коде — соответствовать разрешению принтера, иначе сканер будет читать код через раз.
Полезный приём при внедрении: заведите в регистре штрих-кодов отдельный код на каждую упаковку товара сразу при оприходовании, а не «когда-нибудь потом». Склад, где половина ассортимента без кодов, быстро саботирует сканирование — сотрудники возвращаются к ручному поиску по наименованию, и весь эффект автоматизации теряется.
Частые вопросы
Почему сканер работает в Блокноте, но не в 1С?
Потому что в клавиатурном режиме сканер вводит данные туда, где стоит курсор. В 1С поле ввода штрих-кода должно быть активным, либо нужно подключить сканер через драйвер в режиме COM-порта — тогда событие сканирования перехватывается программой независимо от фокуса.
Можно ли привязать один штрих-код к нескольким товарам?
Технически регистр это допускает, но делать так не следует: при сканировании 1С найдёт первую попавшуюся запись и подставит непредсказуемый товар. Дубли нужно искать и устранять — запросом или отчётом по регистру штрих-кодов с группировкой по коду.
Что делать, если у товара поставщика нет штрих-кода?
Сгенерируйте внутренний код в 1С и распечатайте этикетку через обработку печати этикеток. Внутренние коды формируйте в диапазоне, который не пересекается с заводскими EAN-13, чтобы избежать коллизий при поступлении маркированного поставщиком товара.
Почему DataMatrix маркированного товара не сканируется как обычный код?
DataMatrix содержит служебные символы-разделители (GS), которые простой клавиатурный сканер может передавать некорректно. Для маркировки нужен 2D-сканер с поддержкой DataMatrix и режимом передачи служебных символов, а в 1С — актуальная подсистема работы с маркировкой.
Нужен ли отдельный сканер для 2D-кодов, если есть обычный лазерный?
Да. Лазерный сканер читает только линейные штрих-коды (EAN-13, Code 128). Для DataMatrix и QR нужен имидж-сканер (2D), который фотографирует код и распознаёт его программно. При работе с маркированными товарами 2D-сканер обязателен.
Как массово загрузить штрих-коды из накладной поставщика?
Используйте загрузку из табличного документа (Excel) через типовую обработку загрузки данных или заполнение табличной части поступления сканированием: при оприходовании оператор сканирует каждый товар, и коды автоматически записываются в регистр для новых позиций.
Что важно запомнить
Сканер лишь вводит цифры — вся логика поиска товара живёт в регистре штрих-кодов 1С. Большинство проблем решается тремя проверками: ввод в Блокноте, наличие кода в карточке товара и правильный режим подключения сканера. Для маркировки и весового товара действуют отдельные правила, которые настраиваются заранее, а не в момент продажи.