Документы и Печать · 12 мин
Почему не печатается штрихкод в 1С и как это исправить
Почему 1С не печатает штрихкод: не установлен компонент, нет шрифта EAN-13, проблемы макета и принтера. Пошаговая диагностика и способы устранения.
При печати ценника или этикетки из 1С штрихкод может не выводиться вовсе: вместо него остаётся пустая область, прямоугольник или только цифровой код без графики. Чаще всего виноваты отсутствующий в системе шрифт штрихкода (например, EanGnivc), неактивная компонента печати 1С:Предприятия либо ошибки в макете документа — и в большинстве случаев проблему можно устранить самостоятельно, проверив эти типовые точки отказа по очереди.
Штрихкод в 1С формируется двумя принципиально разными способами: через внешнюю компоненту (специальную библиотеку, которая рисует изображение) или через шрифт, в котором вместо букв — штрихи. От способа зависит и диагностика: если компонента не установлена, изображение не появится вообще, а при отсутствии шрифта код выведется обычным текстом.
Ниже разобраны основные причины, по которым штрихкод не печатается, пошаговая диагностика и способы устранения для типовых конфигураций — «Управление торговлей», «Розница», «Комплексная автоматизация» и «1С:Предприятие 8» в целом.
Как 1С формирует штрихкод и где ломается цепочка
Понимание механизма помогает быстро локализовать сбой. В типовых конфигурациях используется внешняя компонента «1С:Библиотека подключаемого оборудования» или аналогичная библиотека печати штрихкодов. Она получает строку цифр, тип кода (EAN-13, Code39, QR и другие) и возвращает готовую картинку, которая вставляется в табличный документ.
Альтернативный вариант — шрифтовое решение: в ячейку макета выводится текст специальным шрифтом (например, EanGnivc или аналог), и каждый символ отображается как фрагмент штрихового рисунка. Этот способ завязан на наличие шрифта в операционной системе каждого рабочего места.
Соответственно, цепочка «данные → компонента/шрифт → макет → предпросмотр → принтер» может оборваться на любом звене. Первичный диагностический приём — открыть предварительный просмотр печатной формы. То, что видно на экране, и то, что выходит на бумаге, позволяет сузить поиск до одного-двух звеньев.
Проверка предпросмотра: локализуем звено сбоя
Откройте печатную форму документа или этикетки и посмотрите на область, где должен быть штрихкод. Возможны четыре характерные картины, и каждая указывает на свою группу причин.
Если область пустая или выводится сообщение об ошибке компоненты — проблема в самой компоненте: она не установлена, не зарегистрирована или заблокирована. Если вместо штрихов видны обычные цифры и буквы — макет рассчитан на шрифт, которого нет в системе, либо шрифт заменён. Если штрихкод на экране есть, но на бумаге не выходит или смазан — проверяйте принтер и настройки печати.
Установка и регистрация внешней компоненты печати штрихкодов
Наличие шрифта в системе и правильный шрифт в макете
Драйвер принтера, масштаб, качество печати
Размер, контрастность, контрольный символ кода
Компонента печати штрихкодов: установка и регистрация
В типовых конфигурациях компонента обычно поставляется внутри конфигурации и устанавливается автоматически при первом обращении. Однако автоматическая установка часто блокируется: браузером при работе в веб-клиенте, антивирусом, политиками безопасности Windows или отсутствием прав администратора у пользователя.
Признак проблемы — сообщение вида «Не удалось подключить внешнюю компоненту» или «Ошибка при вызове метода контекста» при формировании печатной формы. В этом случае компоненту нужно установить вручную: файл компоненты поставляется в составе конфигурации или дистрибутива, и его регистрируют в системе. Для тонкого клиента и веб-клиента могут потребоваться разные варианты установки.
Обратите внимание на разрядность: 32-битная компонента не загрузится в 64-битном клиенте 1С и наоборот. Если после обновления платформы штрихкоды перестали печататься именно на части рабочих мест, несовпадение разрядности клиента — одна из первых версий для проверки.
- 1Сформируйте печатную форму и запомните точный текст ошибки
- 2Проверьте разрядность клиента 1С (Справка — О программе)
- 3Переустановите или вручную зарегистрируйте компоненту из поставки конфигурации
- 4Проверьте, не блокирует ли установку антивирус или политики безопасности
- 5Перезапустите сеанс 1С и повторите формирование печатной формы
Шрифтовые штрихкоды: когда код выводится текстом
Если макет построен на шрифте, а штрихкод виден как обычная строка символов, шрифт отсутствует в операционной системе того компьютера, где формируется печать. Это особенно заметно в терминальных и клиент-серверных режимах: шрифт должен стоять на том узле, где рендерится табличный документ, — на сервере 1С или на терминальном сервере, а не только на локальном ПК бухгалтера.
Решение — установить нужный шрифт в систему и перезапустить сеанс 1С. После установки проверьте, что в макете указано именно то имя шрифта, под которым он зарегистрирован в Windows: расхождение даже в одном символе приведёт к подмене шрифта.
Дополнительный нюанс шрифтового решения — контрольный символ. Многие шрифтовые штрихкоды требуют корректно рассчитанной контрольной цифры EAN-13; если строка сформирована с ошибкой, сканер код не прочитает, даже когда графика выглядит правильно.
Макет и данные: что проверить в конфигурации
Иногда компонента и шрифты в порядке, но штрихкод не выводится из-за проблем в данных или макете. Типовая ситуация — у номенклатуры просто не заполнен штрихкод в карточке, либо заполнен с недопустимыми символами или неверной длиной. EAN-13 требует ровно 13 цифр (или 12 с автоматическим расчётом контрольной), буквы и пробелы недопустимы.
Проверьте карточку товара: откройте список штрихкодов номенклатуры и убедитесь, что код присутствует, не содержит лишних символов и соответствует типу, заданному в макете. Если в макете жёстко задан тип EAN-13, а в карточке записан Code128 или внутренний код произвольного формата, компонента может вернуть ошибку или пустое изображение.
Вторая группа причин — сам макет: область под штрихкод слишком мала, картинка обрезается или сжимается до нечитаемости, либо в изменённой печатной форме случайно удалён параметр вывода. Если проблема возникла после доработки печатной формы, сравните её с типовым макетом из поставки конфигурации.
Принтер и настройки печати: когда на экране всё хорошо
Если в предпросмотре штрихкод отображается корректно, а на бумаге отсутствует, бледный или смазанный, источник — печатающая подсистема. Для обычных офисных принтеров проверьте масштаб печати: при масштабировании «по ширине страницы» или при печати из веб-клиента через браузерный диалог изображение может искажаться до нечитаемости сканером.
Для принтеров этикеток добавляются свои факторы: неверно выбранный размер этикетки в драйвере, смещение печати, несоответствие типа носителя (термо/термотрансфер) и износ печатающей головки. Термоголовка с повреждёнными точками даёт вертикальные белые полосы через весь штрихкод — такой код сканер не считает.
Практический тест — напечатать ту же форму на другом принтере или вывести в PDF. Если в PDF штрихкод корректен и читается с экрана сканером, проблема точно в принтере или его драйвере, а не в 1С.
Как проверить результат
Штрихкод отображается графически, штрихи чёткие
Пустая область, текст вместо штрихов, сообщение об ошибке
Код в файле читается сканером с экрана
В PDF код искажён или отсутствует
Сканер считывает код с первого раза
Код не читается или читается через раз
Штрихкод заполнен, цифры без букв и пробелов
Пустое поле или код произвольного формата
Типичные ошибки и риски при самостоятельном устранении
Большинство попыток починить печать штрихкода безопасны, но есть действия, способные навредить. Регистрация сторонних компонент, скачанных с непроверенных источников, — реальный риск: такие библиотеки выполняются с правами пользователя и могут содержать вредоносный код. Используйте только компоненты из поставки конфигурации или от фирмы «1С».
Осторожность нужна и при правке макетов в конфигураторе: изменение типовой печатной формы снимает объект с полной поддержки и усложняет обновления. Перед правкой сделайте копию макета или внешнюю печатную форму — это безопасный путь, не затрагивающий типовую конфигурацию.
Быстрый маршрут диагностики
Чтобы не проверять всё подряд, двигайтесь по цепочке от предпросмотра к принтеру, отсекая звенья по одному. Такая последовательность в большинстве случаев приводит к причине за 10–15 минут.
Как выбрать действие
Если после прохождения всех шагов проблема сохраняется, зафиксируйте точный текст ошибки, версию платформы и конфигурации и проверьте, не связан ли сбой с недавним обновлением. Информация о регрессии после обновления существенно сокращает поиск: часто помогает повторная установка компоненты из новой поставки.
Что важно запомнить
Диагностику начинайте с предпросмотра: пустая область указывает на компоненту, текст вместо штрихов — на отсутствующий шрифт, расхождение экрана и бумаги — на принтер. В серверном режиме шрифты и компоненты ставятся на сервер. Проверяйте данные в карточках товаров и не используйте компоненты из непроверенных источников.
Частые вопросы
Штрихкод печатается, но сканер его не читает. Что делать?
Проверьте три вещи: корректность контрольной цифры кода (для EAN-13 она рассчитывается по стандартному алгоритму), размер изображения на бумаге (слишком мелкий или сжатый код не читается) и контрастность печати. Также убедитесь, что сканер настроен на распознавание нужного типа штрихкода.
После обновления платформы 1С штрихкоды перестали печататься. Почему?
Типовая причина — смена разрядности клиента 1С или сброс регистрации внешней компоненты. Переустановите компоненту из актуальной поставки конфигурации и проверьте, какой клиент (32- или 64-битный) используется на проблемном рабочем месте.
Штрихкод не печатается только у одного пользователя, у остальных всё работает. В чём причина?
Проблема локальна для этого рабочего места: не установлена компонента или шрифт, другая разрядность клиента, блокировка антивирусом или повреждённый кэш. Сравните конфигурацию рабочего места с тем, где печать работает.
Можно ли печатать штрихкоды без установки внешней компоненты?
Да, через шрифтовое решение: в макете используется специальный шрифт, и код выводится как текст. Ограничение — шрифт должен быть установлен на каждом узле, где формируется печать, и требуется корректный расчёт контрольного символа.
У части товаров штрихкод печатается, у части — нет. Где искать?
Почти наверняка дело в данных: у «молчащих» карточек штрихкод не заполнен, содержит буквы или пробелы либо не соответствует типу, заданному в макете. Откройте список штрихкодов проблемной номенклатуры и приведите коды к корректному формату.
Как проверить штрихкод без сканера?
Выведите печатную форму в PDF и проверьте геометрию штрихов визуально: линии должны быть чёткими, без разрывов и белых вертикальных полос. Для проверки читаемости подойдёт приложение-сканер на смартфоне — оно использует те же алгоритмы распознавания.