Документы и Печать · 12 мин
Как вывести на печать штрихкод в 1С
Как вывести штрихкод на печать в 1С: подключение компоненты, настройка макета, печать этикеток и ценников, типичные ошибки и их решение.
Штрихкод на печатной форме нужен в двух типовых ситуациях: на этикетках и ценниках товара и на документах (накладных, заказах, упаковочных листах), чтобы склад и касса могли быстро идентифицировать позицию сканером. В типовых конфигурациях 1С механизм уже встроен: печать штрихкода выполняется через специальную компоненту, которая формирует картинку кода по переданному значению.
Главная сложность у большинства пользователей — не сама печать, а то, что компонента формирования штрихкода не установлена или не подключена, из-за чего вместо кода выводится пустое место или сообщение об ошибке. Вторая частая проблема — слишком мелкий или растянутый штрихкод, который принтер печатает, но сканер не читает.
Ниже разобран рабочий порядок: как проверить наличие штрихкода в карточке номенклатуры, как подключить компоненту, как вывести код на этикетку и на документ, как настроить размер и как проверить результат сканером до запуска тиража.
Что нужно подготовить перед печатью штрихкода
Печать штрихкода возможна только при выполнении трёх условий. Первое — у номенклатуры заполнено поле «Штрихкод» в карточке товара (или в регистре штрихкодов, в зависимости от конфигурации). Если поле пустое, печатать будет нечего: макет выведет пустую область.
Второе условие — установленная компонента формирования изображения штрихкода. В конфигурациях на управляемых формах (УТ 11, ERP, Розница, «Управление нашей фирмой») используется компонента из состава Библиотеки стандартных подсистем. При первом обращении к печати этикеток система обычно сама предлагает её установить.
Третье условие — подходящий принтер. Для этикеток лучше всего подходит термопринтер этикеток, но штрихкод приемлемого качества печатает и обычный лазерный принтер на самоклеящейся бумаге. Струйный принтер — худший вариант: краска растекается, и тонкие штрихи «заливаются».
Если пусто — сначала введите или сгенерируйте штрихкод
Нужно установить компоненту печати штрихкодов
Струйный часто даёт нечитаемый код
Тип определяет допустимый состав символов
Проверяем и заполняем штрихкод в карточке товара
Откройте карточку номенклатуры и найдите поле «Штрихкод». В большинстве конфигураций оно находится на основной форме или на вкладке с дополнительными реквизитами. Если товар пришёл от поставщика с заводским кодом EAN-13, внесите его вручную или считайте сканером прямо в поле — курсор в поле, сканер введёт цифры как с клавиатуры.
Если у товара нет заводского штрихкода, 1С может сгенерировать внутренний. В типовых конфигурациях для этого есть команда автоматического формирования штрихкодов (например, в обработке печати этикеток или в настройках номенклатуры). Внутренние коды обычно строятся на префиксе, который вы задаёте сами, чтобы не пересекаться с заводскими EAN.
Важно: один товар может иметь несколько штрихкодов (для разных упаковок и единиц измерения), но один и тот же штрихкод не должен быть привязан к двум разным товарам — иначе сканер будет подставлять не ту позицию, и учёт «поплывёт» незаметно для оператора.
Установка и подключение компоненты печати штрихкодов
Компонента формирования штрихкода — это внешний модуль, который по значению кода строит картинку и передаёт её в макет. Без неё никакой макет штрихкод не нарисует. Признак отсутствия компоненты: при нажатии «Печать этикеток» появляется сообщение «Не установлена компонента печати штрихкодов» или вместо кода выводится пустой прямоугольник.
В типовых конфигурациях установка происходит так: при первой попытке печати этикетки система выводит диалог с предложением установить компоненту. Подтвердите установку — файл компоненты загружается из самой конфигурации, интернет не нужен. После установки перезапустите печатную форму.
Если автоматическая установка не сработала (типично для тонкого клиента с ограниченными правами или веб-клиента), компоненту устанавливает администратор: либо через публикацию на веб-сервере, либо раздачей файла компоненты на рабочие места. В файловых базах иногда помогает запуск 1С от имени администратора один раз, чтобы компонента зарегистрировалась в системе.
Печать этикеток и ценников со штрихкодом
Стандартный путь в торговых конфигурациях — обработка «Печать этикеток и ценников». Откройте её из раздела закупок или складских операций (в УТ 11: «Закупки» → «Сервис» → «Печать этикеток и ценников»; в Рознице — из карточки товара или документа поступления по кнопке печати).
Добавьте товары в табличную часть: вручную, по документу поступления или подбором. Укажите количество этикеток для каждой позиции — обычно оно равно количеству единиц товара, которое нужно промаркировать. Выберите шаблон этикетки: в шаблоне уже размещены поля наименования, цены и штрихкода.
Перед печатью откройте предварительный просмотр и убедитесь, что штрихкод отображается как графический код, а не как строка цифр или пустое место. Затем напечатайте одну пробную этикетку и проверьте её сканером — этот шаг экономит целые рулоны этикеток.
- 1Проверьте, что у товара заполнен штрихкод в карточке номенклатуры
- 2Откройте обработку «Печать этикеток и ценников» и добавьте товары
- 3Установите компоненту печати штрихкодов, если система её запросит
- 4Выберите шаблон этикетки и задайте количество копий
- 5Откройте предварительный просмотр и проверьте отображение кода
- 6Напечатайте одну этикетку и отсканируйте её сканером
- 7Только после успешной проверки запускайте печать всего тиража
Вывод штрихкода на печатную форму документа
На документах (заказах, накладных, упаковочных листах) штрихкод чаще всего выводится для идентификации самого документа: кладовщик сканирует код с бумаги, и 1С открывает нужный документ. В типовых конфигурациях такие формы уже существуют — например, печать заказа или упаковочного листа со штрихкодом.
Если нужной формы нет, штрихкод добавляют в макет печатной формы. В режиме толстого клиента или через конфигуратор в макет (табличный документ) вставляют область с параметром картинки штрихкода, а в модуле формирования печатной формы вызывают функцию библиотеки, которая возвращает изображение кода по значению. Для конфигураций на БСП это функции менеджера оборудования печати штрихкодов.
Пример обращения к механизму в коде (для конфигураций на базе БСП):
// Получаем изображение штрихкода
ПараметрыШтрихкода = Новый Структура;
ПараметрыШтрихкода.Вставить("Штрихкод", "4607025392111");
ПараметрыШтрихкода.Вставить("ТипКода", 1); // EAN-13
ПараметрыШтрихкода.Вставить("Ширина", 200);
ПараметрыШтрихкода.Вставить("Высота", 100);
Результат = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода);
Если Результат.Результат Тогда
Рисунок.Картинка = Результат.Картинка;
КонецЕсли;
Если у вас нет доступа к конфигуратору или конфигурация на поддержке без возможности изменения, используйте механизм дополнительных печатных форм: внешняя печатная форма подключается через «Администрирование» → «Печатные формы, отчеты и обработки» без снятия конфигурации с поддержки.
Настройка размера и типа штрихкода
Читаемость штрихкода зависит от трёх параметров: типа кода, физического размера и качества печати. EAN-13 подходит только для 13-значных цифровых кодов товаров. Для внутренних кодов документов и смешанных значений (буквы и цифры) используйте Code128 — он компактнее и допускает буквенно-цифровые значения. Для маркировки «Честный ЗНАК» нужен DataMatrix — это отдельный двумерный формат со своими требованиями.
Минимальный практический размер линейного штрихкода для обычного сканера — около 25–30 мм по ширине при высоте штрихов 10–15 мм. Уменьшение ниже этого порога резко повышает долю нечитаемых этикеток, особенно на лазерных принтерах с низким качеством тонера. Не растягивайте картинку кода непропорционально: искажение пропорций штрихов делает код нечитаемым даже при большом размере.
В шаблоне этикетки размер штрихкода меняется растягиванием области рисунка в редакторе шаблона. После каждого изменения печатайте пробник и проверяйте сканером — визуально «нормальный» код может не читаться из-за плотности штрихов.
Как проверить результат
Графический код с чёткими штрихами
Пустая область или строка цифр вместо кода
Сканер считывает код с первого раза
Код читается через раз или не читается
Сканер выдаёт тот же код, что в карточке товара
Считанное значение отличается от записанного
Вокруг кода есть светлое поле без печати
Штрихи упираются в край или перекрыты текстом
Типичные ошибки и их устранение
Самая частая ошибка — попытка напечатать штрихкод, которого нет в базе: пользователь выбирает товар, жмёт «Печать этикеток» и получает этикетки без кода. Решение — сначала заполнить или сгенерировать штрихкоды, затем печатать.
Вторая ошибка — печать EAN-13 со значением, которое не соответствует формату: буквы, пробелы, неправильная длина. Компонента в этом случае либо не формирует картинку, либо формирует нечитаемый код. Проверяйте, что значение содержит ровно 13 цифр (или 12, если контрольная цифра рассчитывается автоматически).
Третья группа ошибок — техническая: неустановленная компонента на конкретном рабочем месте, устаревший драйвер термопринтера, неверный размер этикетки в настройках принтера (код обрезается). Диагностируйте по цепочке: предпросмотр в 1С → пробная печать → настройки принтера.
FAQ: частые вопросы о печати штрихкодов в 1С
Почему вместо штрихкода печатается пустое место?
Три основные причины: не установлена компонента печати штрихкодов на этом рабочем месте, у товара не заполнен штрихкод, либо значение не соответствует типу кода (например, буквы в EAN-13). Проверяйте в этом порядке: сначала карточку товара, затем наличие компоненты, затем формат значения.
Можно ли печатать штрихкоды без сканера?
Да, печать от сканера не зависит — сканер нужен только для проверки читаемости. Но без сканера вы не сможете убедиться, что этикетки читаются, поэтому для регулярной маркировки товара сканер фактически обязателен хотя бы в одном экземпляре на точке.
Какой тип штрихкода выбрать для внутренних кодов?
Для внутренних кодов документов и товаров без заводской маркировки удобнее Code128: он допускает буквы и цифры, компактен и стабильно читается большинством сканеров. EAN-13 оставьте для товарных кодов, а DataMatrix — для маркировки по требованиям «Честного ЗНАКа».
Штрихкод печатается, но сканер его не читает. Что делать?
Увеличьте размер кода в шаблоне этикетки, проверьте, что вокруг кода есть светлое поле, и убедитесь, что принтер печатает чётко (на термопринтере — отрегулируйте температуру печати, на лазерном — качество тонера). Также проверьте, что сканер вообще поддерживает данный тип кода: не все сканеры читают, например, DataMatrix.
Нужно ли менять конфигурацию, чтобы вывести штрихкод на накладную?
Не обязательно. В типовых конфигурациях используйте механизм дополнительных внешних печатных форм — он подключается через настройки печатных форм без снятия конфигурации с поддержки. Прямая доработка макета в конфигураторе нужна только при нестандартных требованиях.
Почему на одном компьютере штрихкод печатается, а на другом нет?
Компонента печати штрихкодов устанавливается локально на каждое рабочее место. На компьютере, где код не выводится, откройте печать этикеток и подтвердите установку компоненты, когда система её предложит. Если предложение не появляется — возможно, недостаточно прав, и установку должен выполнить администратор.
Что важно запомнить
Печать штрихкода в 1С строится на трёх опорах: заполненный штрихкод в карточке товара, установленная компонента на рабочем месте и правильно подобранный тип и размер кода в шаблоне. Всегда печатайте пробную этикетку и проверяйте её сканером до запуска тиража — это главная защита от брака и перепутанных позиций.