Вы столкнулись с проблемой, когда 1С не печатает штрих-коды на этикетках, чеках или документах? Это одна из самых распространённых технических неполадок в конфигурациях 1С:Торговля и Склад, 1С:Розница и 1С:Управление торговлей. Ошибка может проявляться по-разному: от полного отсутствия штрих-кода на печати до искажённых символов или неправильного формата. В 80% случаев проблема решается настройкой конфигурации или драйверов оборудования, но иногда требуется глубокая диагностика.

В этой статье мы разберём все возможные причины — от банальных (неверные настройки принтера) до сложных (повреждение шаблонов печати или конфликт версий 1С). Вы узнаете, как проверить каждый элемент системы, где искать ошибки в коде, и что делать, если штрих-код печатается, но не сканируется. А для удобства мы добавили интерактивные чек-листы и таблицу совместимости оборудования с версиями 1С.

Прежде чем приступать к исправлению, ответьте на один вопрос:

📊 Какой тип штрих-кода вы пытаетесь напечатать?
EAN-13
Code 128
QR-код
DataMatrix
Другой

1. Проверка оборудования: принтер, драйвера и подключение

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

  • 🖨️ Тип принтера: Убедитесь, что ваше устройство поддерживает печать штрих-кодов. Например, обычные лазерные принтеры могут некорректно отображать мелкие штрихи EAN-13 или Code 128.
  • 🔌 Подключение: Если принтер подключён по USB, попробуйте переподключить кабель или использовать другой порт. Для сетевых принтеров проверьте IP-адрес в настройках 1С.
  • 📥 Драйвера: Устаревшие драйвера — частая причина сбоев. Скачайте актуальную версию с сайта производителя (например, для Zebra, TSC или Godex).
  • 📏 Разрешение печати: Для штрих-кодов требуется минимальное разрешение 203 dpi (лучше 300 dpi). Проверьте настройки в панели управления принтера.

Если принтер новый, но штрих-коды не печатаются, возможно, он не совместим с вашей версией 1С. Ниже таблица совместимости популярных моделей:

Модель принтера 1С:Предприятие 8.3 (обычные формы) 1С:Предприятие 8.3 (управляемые формы) Требуемый драйвер
Zebra ZD420 Да Да (с обновлением 2023+) Zebra Designer Pro
TSC TE200 Да Частично (нужен патч) TSC BarTender
Godex EZ-2300 Да Да Godex Printer Driver
Brother QL-800 Нет (только через внешние обработки) Да Brother P-touch Editor
⚠️ Внимание: Если вы используете фискальные регистраторы (например, Атол или Штрих-М), убедитесь, что в настройках 1С включён режим печати штрих-кодов через драйвер ККТ. В некоторых версиях это отдельная галочка в параметрах оборудования.

2. Настройки 1С: шаблоны печати и параметры штрих-кодов

Если с принтером всё в порядке, проблема кроется в настройках 1С. Чаще всего ошибки возникают из-за:

  • 📄 Неправильного шаблона печати: В конфигурациях 1С:Торговля и Склад и 1С:Розница штрих-коды выводятся через внешние обработки или встроенные макеты. Проверьте, не сбились ли настройки в разделе Администрирование → Печать → Шаблоны этикеток.
  • 🔢 Некорректного формата штрих-кода: Например, вы пытаетесь напечатать EAN-13, но в карточке номенклатуры указан Code 128. Перепроверьте поле Тип штрих-кода в справочнике номенклатуры.
  • 📏 Неверных размеров: Штрих-код может не печататься, если его ширина или высота в шаблоне меньше минимально допустимых (например, менее 20 мм для EAN-13).
  • 🔄 Конфликта версий: После обновления 1С старые шаблоны могут перестать работать. Обновите обработки печати через Конфигуратор.

Чтобы проверить шаблон, выполните следующие шаги:

Откройте Администрирование → Печать → Шаблоны этикеток

Выберите используемый шаблон и нажмите "Редактировать"

Проверьте, что в макете есть поле для штрих-кода (обычно обозначено как {ШтрихКод})

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

Сохраните изменения и перезапустите 1С-->

Если шаблон в порядке, но штрих-код всё равно не печатается, попробуйте сбросить кэш метаданных. Для этого:

  1. Закройте все сеансы 1С.
  2. Удалите папку C:\Users\<ИмяПользователя>\AppData\Roaming\1C\1Cv8 (или аналогичную для вашей ОС).
  3. Запустите 1С заново и повторите печать.
💡

Если вы используете управляемые формы, попробуйте временно переключиться на обычные формы (через Сервис → Параметры → Запуск 1С:Предприятия). Иногда это помогает выявить проблему с отображением штрих-кодов.

3. Ошибки в данных: номенклатура и справочники

Одна из самых коварных причин — отсутствие или некорректность штрих-кодов в справочнике номенклатуры. Даже если вы видите штрих-код в карточке товара, он может быть:

  • 🚫 Пустым: Поле заполнено пробелами или не заполнено вовсе.
  • 🔢 Некорректной длины: Например, для EAN-13 требуется ровно 13 цифр, а у вас 12 или 14.
  • 🔄 Дублирующимся: Один и тот же штрих-код присвоен нескольким позициям номенклатуры.
  • 📌 Неактивным: В некоторых конфигурациях есть флажок "Использовать для печати", который может быть снят.

Как проверить данные:

  1. Откройте справочник Номенклатура (Справочники → Номенклатура).
  2. Найдите проблемный товар и откройте его карточку.
  3. Перейдите на вкладку Штрихкоды (или аналогичную в вашей конфигурации).
  4. Убедитесь, что:
    • Штрих-код указан без пробелов и спецсимволов.
    • Тип штрих-кода соответствует тому, что вы пытаетесь напечатать.
    • Нет дублирующихся записей для одного товара.

Если штрих-коды в справочнике отсутствуют, их можно сгенерировать автоматически. Для этого:

  1. Выделите нужные позиции в справочнике Номенклатура.
  2. Нажмите Ещё → Сгенерировать штрихкоды (в некоторых конфигурациях эта функция может называться иначе).
  3. Выберите тип штрих-кода (например, EAN-13) и подтвердите генерацию.
  4. ⚠️ Внимание: Если вы работаете с маркированными товарами (лекарства, табак, обувь), штрих-коды должны соответствовать требованиям системы Честный ЗНАК. Сгенерированные вручную коды могут не пройти валидацию.

    4. Проблемы с драйвером печати штрих-кодов в 1С

    В 1С для печати штрих-кодов используется внешний драйвер1C:Barcode или аналогичные компоненты. Если он повреждён или устарел, штрих-коды могут:

    • Не отображаться вовсе.
    • Печататься в виде случайных символов.
    • Выводиться в неправильном формате (например, вместо EAN-13 печатается Code 39).

Как проверить и обновить драйвер:

  1. Закройте 1С.
  2. Перейдите в папку установки 1С (обычно C:\Program Files\1Cv8\8.3.23.1234\bin, где 8.3.23.1234 — ваша версия платформы).
  3. Найдите файлы:
    • Barcode.dll
    • Barcode83.dll (для 8.3)
    • 1CBarcode.epf (внешняя обработка)
  • Если файлы отсутствуют или их версия устарела, скачайте актуальные с сайта пользователей 1С (раздел "Дополнения и обработки").
  • Замените файлы в папке bin и перезапустите 1С.
  • Если после обновления драйвера штрих-коды по-прежнему не печатаются, попробуйте перерегистрировать компоненту. Для этого:

    1. Запустите командную строку от имени администратора.
    2. Выполните команду:
      regsvr32 "C:\Program Files\1Cv8\8.3.23.1234\bin\Barcode83.dll"

      (замените путь на актуальный для вашей версии 1С).

    3. Перезагрузите компьютер.
    4. Что делать, если драйвер не регистрируется?

      Если при выполнении команды regsvr32 появляется ошибка "Не удалось загрузить модуль", скорее всего, проблема в правах доступа или повреждении файла. Попробуйте:

      1. Скопировать файл Barcode83.dll в папку C:\Windows\System32 и повторить регистрацию.

      2. Запустить командную строку от имени администратора.

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

      5. Конфликты с антивирусом и правами доступа

      Реже, но метко: антивирусные программы или политики безопасности Windows могут блокировать печать штрих-кодов. Это происходит потому, что:

      • 🛡️ Антивирус воспринимает драйвер Barcode.dll как подозрительный файл.
      • 🔒 У пользователя нет прав на доступ к принтеру или папкам 1С.
      • 📂 Папка с шаблонами печати заблокирована для записи.

    Как проверить:

    1. Временно отключите антивирус (например, Kaspersky, ESET NOD32 или Windows Defender) и попробуйте напечатать штрих-код заново. Если проблема исчезла — добавьте исключение для папки 1С и файла Barcode.dll.
    2. Проверьте права доступа:
      • Кликните правой кнопкой по папке C:\Program Files\1Cv8Свойства → Безопасность.
      • Убедитесь, что ваш пользователь имеет права на Чтение и выполнение, Запись.
  • Запустите 1С от имени администратора (клик правой кнопкой по ярлыку → Запуск от имени администратора).
  • Если проблема в правах, но вы не можете их изменить (например, в корпоративной сети), обратитесь к системному администратору с просьбой:

    • Добавить вашего пользователя в группу Администраторы (временно).
    • Разрешить доступ к принтеру через gpedit.msc (Редактор локальной групповой политики).
    • Исключить папку 1С из сканирования антивирусом.
    ⚠️ Внимание: В некоторых компаниях политики безопасности запрещают запуск 1С с правами администратора. В этом случае попробуйте перенести базу на другой компьютер с аналогичными настройками и проверьте печать там.

    6. Ошибки в коде: программные сбои и исправления

    Если все предыдущие шаги не помогли, проблема может крыться в программном коде конфигурации. Это актуально для:

    • 🔧 Самописных обработок печати.
    • 📦 Нетипичных конфигураций (например, сильно доработанных под заказчика).
    • 🐛 Конфликтов после обновлений (особенно если проблема появилась после апдейта 1С).

    Как диагностировать программную ошибку:

    1. Включите режим отладки:
      • Запустите 1С в режиме Конфигуратор.
      • Откройте модуль обработки печати (Объекты → Обработки).
      • Поставьте точку останова на строке, где формируется штрих-код (обычно это функции вроде ПечатьШтрихКода() или ФормироватьЭтикетку()).
      • Запустите отладку (Отладка → Начать отладку) и повторите печать.
  • Проверьте журнал регистрации:
    • В 1С перейдите в Администрирование → Журнал регистрации.
    • Отфильтруйте записи по дате и времени попытки печати.
    • Ищите ошибки с текстом Barcode, Печать или ШтрихКод.

    Типичные ошибки в коде и их исправления:

    Ошибка Причина Решение
    Ошибка при вызове метода контекста (ПечатьШтрихКода) Отсутствует или повреждён драйвер Barcode.dll Переустановить драйвер (см. раздел 4)
    Недопустимый формат штрих-кода В шаблоне указан несуществующий тип (например, EAN-14 вместо EAN-13) Исправить тип в макете печати
    Нет данных для печати штрих-кода В карточке номенклатуры не заполнено поле ШтрихКод Заполнить штрих-код в справочнике (см. раздел 3)
    Ошибка доступа к принтеру Нет прав на печать или принтер не подключён Проверить подключение и права (см. раздел 5)

    Если вы не программист, но подозреваете ошибку в коде, можно:

    • 📞 Обратиться к партнёру 1С, который поддерживает вашу базу.
    • 🔍 Найти аналогичную проблему на форумах (например, Инфостарт или форум 1С).
    • 🔄 Откатить конфигурацию до предыдущей версии (если проблема появилась после обновления).
    💡

    Если при печати штрих-кода 1С "зависает" или выдаёт ошибку External exception EEFFACE, с большой вероятностью проблема в конфликте версий платформы 1С и драйвера принтера. Попробуйте обновить оба компонента до последних версий.

    7. Проблемы с печатью на фискальных регистраторах (ККТ)

    Если вы печатаете штрих-коды через фискальный регистратор (например, Атол 11Ф, Штрих-М ФР-К или Вики Принт), алгоритм диагностики отличается. Здесь ошибки чаще связаны с:

    • 📜 Настройками драйвера ККТ: В 1С должен быть установлен актуальный драйвер для вашей модели фискального регистратора.
    • 🔌 Протоколом обмена: Некоторые ККТ требуют настройки COM-порта или TCP/IP.
    • 📋 Форматом чека: Штрих-код может не печататься, если он не включён в шаблон чека.
    • 🔒 Фискальными ограничениями: Например, в чеках нельзя печатать штрих-коды для некоторых категорий товаров (алкоголь, табак).

    Как настроить печать штрих-кодов на ККТ:

    1. Откройте Администрирование → Настройки оборудования → Фискальные регистраторы.
    2. Выберите вашу ККТ и нажмите Настроить.
    3. Убедитесь, что в настройках включена опция Печатать штрих-коды (или аналогичная).
    4. Проверьте, что в шаблоне чека (обычно в Администрирование → Печать → Шаблоны чеков) есть поле для штрих-кода.

    Если штрих-код печатается на чеке, но не сканируется, проверьте:

    • 🔍 Качество печати: Фискальные регистраторы часто печатают на термобумаге, которая со временем выцветает. Попробуйте другой рулон.
    • 📏 Размер штрих-кода: На чеках он должен быть не менее 20×10 мм.
    • 📱 Сканер: Некоторые сканеры не читают штрих-коды с чеков из-за низкого контраста. Попробуйте отсканировать код с экрана монитора.
    ⚠️ Внимание: С 2026 года для маркированных товаров (лекарства, обувь, табак) требуется печать DataMatrix вместо обычных штрих-кодов. Убедитесь, что ваша ККТ поддерживает этот формат. В противном случае чеки могут не пройти фискализацию.

    FAQ: Частые вопросы по печати штрих-кодов в 1С

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

    Это одна из самых распространённых проблем. Причины могут быть следующими:

    • 🖨️ Низкое качество печати: Штрихи сливаются или прерываются. Проверьте настройки принтера (увеличьте DPI или уменьшите скорость печати).
    • 📏 Неправильный размер: Штрих-код слишком мелкий. Минимальный рекомендуемый размер для EAN-1337×25 мм.
    • 🔍 Несоответствие типа: Вы печатаете Code 128, а сканер настроен на EAN-13. Проверьте настройки сканера.
    • 📄 Плохая бумага: Термоэтикетки низкого качества могут "плыть" при нагреве. Попробуйте другой рулон.

    Чтобы проверить, корректен ли штрих-код, отсканируйте его с экрана монитора. Если сканируется — проблема в печати. Если нет — в данных.

    🖥️ Как напечатать штрих-код из 1С на обычном принтере (не этикеток)?

    Для печати штрих-кодов на обычном лазерном или струйном принтере:

    1. Используйте внешнюю обработку печати (например, 1C:Печать штрих-кодов из каталога 1С:ИТС).
    2. Настройте шаблон в Word или Excel и экспортируйте данные из 1С через Выгрузка в MS Office.
    3. Используйте специализированное ПО вроде BarTender или NiceLabel, подключив его к 1С через COM-соединение.

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

    📌 Можно ли в 1С сгенерировать штрих-коды автоматически для всех товаров?

    Да, в большинстве конфигураций (1С:Торговля и Склад, 1С:Розница, 1С:УТ) есть встроенная функция генерации штрих-кодов. Чтобы ею воспользоваться:

    1. Откройте справочник Номенклатура.
    2. Выделите нужные позиции (можно выделить все через Ctrl+A).
    3. Нажмите Ещё → Сгенерировать штрихкоды (или аналогичный пункт).
    4. Выберите тип штрих-кода (EAN-13, Code 128 и т. д.) и подтвердите.

    Если в вашей конфигурации нет такой функции, можно:

    • Использовать внешнюю обработку (например, Генератор штрих-кодов для 1С с Инфостарта).
    • Написать простой скрипт на встроенном языке 1С для автоматической генерации.

    Важно: для маркированных товаров (лекарства, обувь, табак) штрих-коды должны соответствовать требованиям Честного ЗНАКа. Автоматическая генерация здесь не подходит — коды должны быть получены из системы маркировки.

    🔄 После обновления 1С перестали печататься штрих-коды. Что делать?

    Это типичная проблема после обновлений платформы или конфигурации. Действуйте по алгоритму:

    1. Проверьте совместимость:
      • Откройте Справка → О программе и запомните версию платформы (например, 8.3.23.1234).
      • На сайте 1С:ИТС проверьте, поддерживается ли ваша версия принтера или ККТ.
    2. Обновите драйвера:
      • Скачайте актуальные драйвера для принтера и компоненты Barcode.dll.
      • Переустановите их (инструкция в разделе 4).
    3. Восстановите шаблоны печати:
      • В Конфигураторе откройте Объекты → Обработки.
      • Найдите обработки с именами вроде ПечатьЭтикеток или ШтрихКод.
      • Сравните их с оригинальными из дистрибутива 1С (через Конфигурация → Сравнить конфигурации).
  • Откатитесь на предыдущую версию:
    • Если проблема появилась после обновления конфигурации, попробуйте вернуть резервную копию базы.
    • Или откатите платформу 1С до предыдущей версии (через Панель управления → Программы →