К статье
Практический материал

Документы и Печать · 9 мин

Как напечатать штрихкод в 1С

Как напечатать штрихкод в 1С: подключение компоненты, печать этикеток из номенклатуры, настройка макета, выбор принтера и решение типичных ошибок.

Печать штрихкодов в 1С нужна для маркировки товаров, ценников, складских ячеек и внутренних документов. В большинстве типовых конфигураций (Управление торговлей, Розница, Комплексная автоматизация, ERP) механизм уже встроен: достаточно, чтобы у номенклатуры был заполнен штрихкод, а в системе работала компонента печати.

Основных сценария два: вывод этикеток и ценников через штатную обработку «Печать этикеток и ценников» и вставка штрихкода в произвольный макет печатной формы. Оба варианта опираются на внешнюю компоненту «1С:Библиотека подключаемого оборудования» или аналогичный макет-картинку, которая преобразует строку цифр в графическое изображение кода.

Ниже разобраны оба пути: от проверки компоненты до настройки макета, выбора принтера этикеток и устранения типичных сбоев, когда штрихкод печатается, но не читается сканером.

Проверьте, что штрихкод есть в карточке товара

Печатать нечего, пока код не записан в базе. Откройте карточку номенклатуры и найдите поле «Штрихкод» — в разных конфигурациях оно располагается на основной вкладке или в отдельной таблице штрихкодов. У одного товара может быть несколько кодов: для штучной единицы, упаковки и короба.

Если код отсутствует, введите его вручную, отсканируйте сканером с заводской упаковки или сгенерируйте внутренний. Для собственной маркировки обычно используют префикс внутренних кодов (в типовых решениях он задаётся в настройках обмена с оборудованием), чтобы не конфликтовать с кодами производителей формата EAN-13.

Проверьте тип штрихкода: EAN-13 содержит 13 цифр, EAN-8 — восемь, Code-128 позволяет кодировать буквы и цифры. Если планируете печатать DataMatrix для маркированных товаров, убедитесь, что конфигурация и компонента поддерживают двумерные коды.

Убедитесь, что работает компонента печати штрихкодов

За преобразование строки в картинку отвечает внешняя компонента. В типовых конфигурациях она входит в поставку и подключается автоматически при первом обращении. Если при печати вместо штрихкода появляется пустое место или сообщение об ошибке компоненты, причина почти всегда в ней.

Откройте раздел администрирования, найдите настройки подключаемого оборудования или печати этикеток и проверьте статус компоненты. В файловом режиме работы компонента устанавливается на компьютер пользователя, в клиент-серверном — на сервер 1С, и это частая причина расхождений: у одного пользователя печатает, у другого нет.

Если компонента не подключается, проверьте разрядность клиента (32 или 64 бита) и права пользователя операционной системы на установку внешних библиотек. В веб-клиенте печать штрихкодов требует отдельной настройки и работает не во всех браузерах — надёжнее использовать тонкий клиент.

Напечатайте этикетки через штатную обработку

Самый быстрый путь — обработка «Печать этикеток и ценников». В Управлении торговлей она находится в разделе «Закупки» или «CRM и маркетинг», в Рознице — в разделе «Закупки» или «Склад». Точное расположение зависит от версии конфигурации, поэтому проще найти её через поиск в меню «Все функции».

Порядок действий
  1. 1
    Откройте обработку «Печать этикеток и ценников» через раздел закупок или «Все функции»
  2. 2
    Добавьте товары в таблицу: вручную, подбором или по документу поступления
  3. 3
    Укажите количество этикеток для каждой позиции
  4. 4
    Выберите шаблон этикетки в поле «Шаблон» — например, «Этикетка» или «Ценник»
  5. 5
    Нажмите «Печать» и проверьте предварительный просмотр
  6. 6
    Отправьте на принтер этикеток или обычный принтер с самоклеящимися листами

Удобный приём — печать по документу: нажмите «Заполнить по документу» и выберите поступление товаров. Обработка подставит все позиции с количеством, и вы сразу получите этикетки на весь приход. Это стандартный сценарий для приёмки на складе.

В таблице можно корректировать количество этикеток по каждой строке, исключать позиции и менять шаблоны. Перед массовой печатью всегда выводите пробный лист: смещение макета на пару миллиметров на самоклейке приводит к тому, что часть этикеток печатается «мимо» ячеек.

Настройте или отредактируйте шаблон этикетки

Шаблон определяет, что будет на этикетке: наименование, цена, артикул, штрихкод, организация. В типовых конфигурациях редактор шаблонов открывается из той же обработки — кнопка «Редактировать шаблон» или аналогичная. Внутри вы увидите макет с полями-параметрами.

Чтобы добавить штрихкод, перетащите в макет элемент «Штрихкод» и укажите источник данных. Размер элемента влияет на читаемость: слишком маленький код сканер не возьмёт, слишком растянутый по вертикали — тоже. Оставляйте вокруг кода свободные поля (тихую зону) — без неё многие сканеры отказываются считывать.

Для принтера этикеток шаблон должен точно совпадать с размером этикетки в принтере — например, 58×40 мм. Укажите размер в настройках шаблона и в драйвере принтера одинаково, иначе получите смещение или обрезку.

Вставьте штрихкод в произвольную печатную форму

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

Типовой код выглядит примерно так: сначала получают данные штрихкода, затем формируют картинку и помещают её в табличный документ.

// Пример формирования картинки штрихкода

ПараметрыШтрихкода = ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода();

ПараметрыШтрихкода.Штрихкод = "4600000000017";

ПараметрыШтрихкода.ТипКода = 1; // EAN-13

ПараметрыШтрихкода.Ширина = 300;

ПараметрыШтрихкода.Высота = 100;

Результат = ГенерацияШтрихкода.ИзображениеШтрихкода(ПараметрыШтрихкода);

Если Результат.Результат Тогда

Рисунок = ОбластьМакета.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);

Рисунок.Картинка = Результат.Картинка;

КонецЕсли;

Точные имена процедур зависят от конфигурации: в БСП-совместимых решениях это модуль «ГенерацияШтрихкода», в более старых — «МенеджерОборудованияВызовСервера» или подобный. Ориентируйтесь на существующие примеры в коде своей конфигурации.

Для небольших доработок без изменения конфигурации используйте внешнюю печатную форму — она подключается через «Дополнительные отчеты и обработки» и не требует снятия конфигурации с поддержки.

Выберите оборудование и проверьте результат

Печатать штрихкоды можно на обычном лазерном принтере (самоклеящиеся листы с разметкой) или на специализированном принтере этикеток. Лазерный вариант дешевле для редкой печати, принтер этикеток удобнее при постоянной маркировке и даёт более чёткий код на маленьких этикетках.

Контрольные точки

Как проверить результат

Считывание сканером
Норма

Сканер считывает код с первого раза с расстояния 5–20 см

Тревожный признак

Сканер молчит или считывает через раз — код слишком мелкий, блёклый или без тихой зоны

Внешний вид
Норма

Штрихи чёткие, без размытия и белых полос внутри кода

Тревожный признак

Полосы смазаны, есть пропуски — проверьте качество печати и настройки драйвера

Соответствие цифр
Норма

Цифры под кодом совпадают со штрихкодом в карточке товара

Тревожный признак

Цифры отличаются — в шаблоне выбран не тот источник данных

Контрольная проверка — считывание: отсканируйте напечатанный код тем же сканером, которым будете работать, и сверьте, что в 1С подставился именно этот товар. Тестируйте коды на реальных этикетках, а не только на экране: глянцевая пленка и мелкий шрифт меняют читаемость.

Типичные ошибки и их устранение

Типичные ошибки
01
Пустое место вместо штрихкода — не подключена компонента либо у товара не заполнен штрихкод; проверьте оба пункта
02
Код печатается, но сканер не читает — штрихкод сжат по ширине, нет тихой зоны или выбран неверный тип кода для содержимого
03
Цифры под кодом не совпадают с базой — в шаблоне этикетки указан источник «Артикул» вместо «Штрихкод»
04
Этикетки смещаются на листе — размер шаблона не совпадает с разметкой листа или настройками принтера
05
У одного пользователя печатает, у другого нет — компонента установлена локально только на одном компьютере

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

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

Итог

Что важно запомнить

Штрихкод печатается через обработку «Печать этикеток и ценников» при заполненном коде в карточке товара и рабочей компоненте. Для своих форм используйте генерацию картинки штрихкода в макете. Всегда проверяйте результат сканером и сохраняйте изменённые шаблоны под новыми именами.

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

Можно ли напечатать штрихкод в 1С без принтера этикеток?

Да. Достаточно обычного лазерного или струйного принтера и самоклеящихся листов с готовой разметкой. Подберите шаблон этикетки под размер ячеек листа и напечатайте пробную страницу на обычной бумаге, приложив её к листу, чтобы проверить совмещение.

Почему сканер не считывает напечатанный штрихкод?

Чаще всего причины такие: код слишком мелкий, сжат по ширине, напечатан блёкло, отсутствует свободное поле вокруг кода или содержимое не соответствует выбранному типу (например, буквы в EAN-13). Увеличьте размер элемента в шаблоне и проверьте тип кода.

Как сгенерировать штрихкод для товара, у которого его нет?

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

Можно ли печатать двумерные коды DataMatrix и QR?

Да, если компонента и конфигурация поддерживают двумерные типы. В параметрах генерации указывается соответствующий тип кода. Учтите, что для маркированных товаров DataMatrix должен формироваться из полного кода маркировки, включая разделители.

Почему в веб-клиенте штрихкод не печатается?

Внешние компоненты в веб-клиенте требуют отдельной установки расширения для браузера и работают не во всех обозревателях. Надёжное решение — использовать тонкий клиент или печатать этикетки на стороне сервера с выводом готового табличного документа.