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