Принтер этикеток молчит или печатает пустые наклейки из 1С: разбор по шагам от кабеля до ZPL

· 10 мин

Содержание

Чаще всего принтер этикеток не печатает из 1С по одной из трёх причин: Windows не видит устройство или висит очередь печати, в драйвере и в шаблоне этикетки заданы разные размеры, либо принтер ждёт команды на своём языке (ZPL, TSPL), а получает картинку от обычного драйвера. Начните с тестовой страницы из Windows: если она не выходит, дело не в 1С.

Ищите причину снизу вверх: железо и порт, потом Windows, потом настройки 1С и сам макет. Так не придётся час перенастраивать шаблоны, когда на самом деле отошёл кабель.

Проверка подключения и самого принтера этикеток

Прежде чем трогать 1С, убедитесь, что принтер жив и готов к работе. Индикатор на корпусе подскажет больше, чем любая настройка.

Что посмотреть на корпусе

  • 🔴 Мигает красный или оранжевый индикатор — закончились этикетки или риббон, открыта крышка, датчик не нашёл зазор.
  • 🟢 Горит ровный зелёный — принтер готов, проблема дальше по цепочке.
  • 📄 Протягивает несколько этикеток подряд и останавливается с ошибкой — сбилась калибровка датчика.
  • 🖨️ Печатает, но бледно или пусто — термобумага вставлена не той стороной или выбран режим термотрансфера без риббона.

Проверить сторону термобумаги просто: проведите ногтем по наклейке. Темнеет та сторона, которая должна смотреть на печатающую головку.

Калибровка датчика этикеток

Если принтер «проскакивает» этикетки или печатает поперёк зазора, ему нужна калибровка. У многих настольных моделей Zebra её запускают, удерживая кнопку подачи до двух миганий индикатора и затем отпуская. У Xprinter и других TSPL-принтеров калибровка обычно делается из фирменной утилиты или комбинацией кнопки при включении — порядок смотрите в инструкции к своей модели.

После калибровки принтер должен выдавать ровно одну этикетку на нажатие кнопки подачи. Пока этого нет, в 1С идти рано.

Тип подключения

ПодключениеЧто проверитьЧастая причина сбоя
USBУстройство в «Диспетчере устройств», без жёлтого значкаПорт-хаб без питания, кабель длиннее 3 м
COM (RS-232)Номер порта, скорость, чётностьСкорость в Windows не совпадает со скоростью принтера
TCP/IP (Ethernet)ping до адреса принтера, порт 9100Принтер получил новый адрес по DHCP
Bluetooth / Wi-FiСвязь стабильна, принтер не спитЭнергосбережение рвёт соединение

Для сетевого принтера закрепите за ним постоянный IP-адрес в роутере. Иначе после очередного включения он «переедет», а Windows продолжит слать задания на старый адрес.

Драйвер и порт в Windows: где обычно ломается печать этикеток

1С печатает через принтеры, установленные в Windows, если не настроено отдельное подключаемое оборудование. Значит, сначала печать должна работать без 1С.

Пошаговая проверка

  1. Откройте Панель управления → Устройства и принтеры (или Параметры → Bluetooth и устройства → Принтеры и сканеры).
  2. Найдите принтер, откройте «Свойства принтера» и нажмите «Пробная печать».
  3. Если пробная страница не вышла — смотрите вкладку «Порты»: принтер должен быть привязан к реальному порту (USB001, COM1, стандартный TCP/IP-порт с адресом принтера).
  4. На вкладке «Дополнительно» проверьте, что выбран драйвер производителя, а не «Generic / Text Only» или стандартный драйвер Microsoft.
  5. В настройках печати драйвера задайте ширину и высоту этикетки, зазор и тип носителя (с зазором, с чёрной меткой, сплошная лента).

Ставьте драйвер с сайта производителя. Для Zebra это ZDesigner, у Xprinter и большинства TSPL-моделей — свой пакет или драйверы Seagull. Универсальный драйвер Windows печатает «как на листе А4» и путает размеры.

COM-порт: скорость и параметры

Принтер с последовательным портом печатает мусор или молчит, если параметры порта в Windows не совпадают с параметрами принтера. Текущие настройки принтера обычно видны на распечатке конфигурации (её печатают кнопкой или из утилиты).

Порт можно настроить командой:

mode COM1: baud=9600 parity=n data=8 stop=1

Значения подставьте с распечатки конфигурации своего принтера. Те же параметры укажите в свойствах COM-порта в «Диспетчере устройств».

Сетевой принтер на порту 9100

Для принтера в сети создайте «Стандартный порт TCP/IP» с его адресом. Протокол — RAW, порт 9100: этот порт по умолчанию принимают Zebra, Xprinter, TSC и большинство других этикеточных принтеров.

Быстрая проверка доступности порта в PowerShell:

Test-NetConnection 192.168.1.50 -Port 9100

TcpTestSucceeded : True — принтер слушает порт. False — проблема в сети, брандмауэре или адресе.

Подключение принтера этикеток в 1С: два разных пути

Здесь кроется главная путаница. В типовых конфигурациях на БСП принтер этикеток можно использовать двумя способами, и проблемы у них разные.

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

Печать через драйвер Windows

При таком способе принтер в 1С отдельно не настраивают. Пользователь открывает печатную форму этикеток, нажимает «Печать» и выбирает принтер в стандартном диалоге.

Что проверить:

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

Печать как подключаемого оборудования

Этот путь настраивается в разделе подключаемого оборудования. В 1С:Бухгалтерии он находится в Администрирование → Подключаемое оборудование, в 1С:Управлении торговлей 11 и Рознице — в разделе администрирования в группе настроек РМК и оборудования.

  1. Включите флажок использования подключаемого оборудования.
  2. В списке оборудования выберите тип «Принтеры этикеток» и создайте новый экземпляр.
  3. Укажите драйвер оборудования. Если его нет в списке — его нужно установить: драйверы поставляются производителем принтера или разработчиком драйвера и подключаются как внешняя компонента.
  4. Откройте настройку экземпляра: порт, скорость, ширину этикетки, язык принтера.
  5. Нажмите «Тест устройства». Пока тест не проходит, печать из документов работать не будет.

Драйвер оборудования должен соответствовать разрядности клиента 1С. Если 32-битная компонента не загружается в 64-битном клиенте, тест падает с ошибкой загрузки драйвера — поставьте версию компоненты нужной разрядности.

Один физический принтер не стоит одновременно держать и как принтер Windows с открытым COM-портом, и как подключаемое оборудование на том же порту. COM-порт занимает тот, кто открыл его первым, второй получает ошибку доступа.

Очередь печати и диспетчер печати Windows

Бывает, что 1С отправила задание, а принтер стоит. Откройте очередь принтера: если там висит задание со статусом «Ошибка» или «Удаление», все следующие встают за ним.

Как очистить зависшую очередь

Сначала попробуйте отменить задание в окне очереди. Если не удаляется — перезапустите диспетчер печати из командной строки, запущенной от имени администратора:

net stop spooler
del /q /f %systemroot%\System32\spool\PRINTERS\*.*
net start spooler

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

Печать из 1С на терминальном сервере

Если 1С работает через RDP, а принтер этикеток стоит у пользователя, Windows перенаправляет его в сессию. Перенаправленный через Easy Print принтер часто теряет нестандартный размер бумаги: этикетка 58×40 мм уходит как лист А4 и печатается микроскопическим фрагментом или пустой.

Варианты решения:

  • 🖥️ установить на сервер тот же драйвер, что и на клиенте, чтобы перенаправление шло через родной драйвер;
  • 🌐 подключить сетевой принтер этикеток к серверу напрямую по TCP/IP;
  • 📏 создать на сервере форму бумаги точного размера этикетки и выбрать её в настройках драйвера.

Шаблон этикетки и размер наклейки

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

Где задаётся размер

В 1С:Управлении торговлей 11 и Рознице шаблоны хранятся в справочнике «Шаблоны этикеток и ценников», а печать идёт через обработку «Печать этикеток и ценников». В шаблоне задаётся макет: поля, штрихкод, размеры области.

Порядок сверки:

  1. Измерьте этикетку линейкой: ширина, высота, зазор между наклейками.
  2. Те же значения внесите в настройки драйвера Windows.
  3. Откройте шаблон в 1С и проверьте, что область этикетки не больше реального размера.
  4. Напечатайте одну этикетку, не тираж.

Типичные симптомы

Диагностика: выберите симптом

Языки ZPL и TSPL: проверка принтера без 1С и драйвера

Этикеточные принтеры понимают свои командные языки. Zebra — ZPL (старые модели — EPL), Xprinter, TSC и многие китайские модели — TSPL. Когда принтер подключён как оборудование, 1С через драйвер отправляет именно такие команды.

Самый надёжный способ понять, кто виноват, — отправить принтеру команду напрямую, в обход 1С.

Тест ZPL для Zebra

Сохраните в файл test.zpl:

^XA
^CI28
^FO50,50^A0N,40,40^FDПроверка печати^FS
^FO50,110^BCN,80,Y,N,N^FD4600000000001^FS
^XZ

Команда ^CI28 включает UTF-8, без неё кириллица превратится в мусор.

Тест TSPL для Xprinter и TSC

Файл test.txt для этикетки 58×40 мм:

SIZE 58 mm, 40 mm
GAP 2 mm, 0 mm
CLS
TEXT 50,50,"3",0,1,1,"TEST 1C"
BARCODE 50,100,"128",80,1,0,2,2,"4600000000001"
PRINT 1,1

Встроенные шрифты TSPL кириллицу обычно не содержат, поэтому в тесте латиница.

Как отправить файл на принтер

  • 🔌 USB-принтер: откройте общий доступ к нему в Windows и выполните copy /b test.zpl \\localhost\ИмяОбщегоРесурса.
  • 🧷 COM-принтер: copy /b test.zpl COM1 после настройки порта командой mode.
  • 🌐 Сетевой принтер: отправьте файл на порт 9100 любым TCP-клиентом или через общий ресурс принтера с RAW-портом.

Если тестовая этикетка вышла, принтер и порт исправны. Значит, ошибка в драйвере оборудования 1С (выбран не тот язык или модель) или в шаблоне.

Частая причина «молчания» Zebra — принтер переключён в режим EPL или в режим строчной печати, а драйвер шлёт ZPL. Распечатайте конфигурацию принтера: в ней указан текущий язык.

Если принтер печатает служебный текст

Вместо этикетки выходит лента с кодами вроде ^XA^FO... или SIZE 58 mm. Это значит, что команды пришли через драйвер Windows как обычный текст. Отправляйте их на RAW-порт или через общий ресурс с флагом /b, а в 1С выберите для подключаемого оборудования нужный язык команд.

Если ничего не помогло

Когда принтер печатает тест и ZPL/TSPL напрямую, а 1С по-прежнему молчит, проверьте ещё четыре вещи:

  1. Под другим пользователем 1С печать идёт? Если да — сбились пользовательские настройки печати. Помогает очистка настроек этого пользователя в Администрирование → Настройки пользователей и прав (команда работы с настройками пользователей) или запуск клиента с ключом /ClearCache.
  2. На другом компьютере с тем же принтером печать идёт? Если да — переустановите драйвер на проблемном рабочем месте.
  3. Помогает ли перезапуск 1С после подключения принтера? Подключаемое оборудование инициализируется при старте, «горячее» подключение USB клиент может не увидеть.
  4. Печатает ли веб-клиент? Он печатает через браузер, и размер этикетки там задаётся в диалоге печати браузера, отдельно от 1С.

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

Можно ли печатать этикетки из 1С на обычный офисный принтер?
Да, на листы самоклеящейся бумаги А4 с разметкой. Шаблон тогда настраивают под сетку листа, а не под рулон.
Почему этикетки печатаются медленно, по одной в несколько секунд?
Драйвер Windows отправляет каждую этикетку картинкой. Подключение принтера как оборудования с языком ZPL или TSPL работает заметно быстрее на больших тиражах.
Нужно ли переустанавливать принтер после обновления 1С?
Нет. Обновление конфигурации не меняет настроек Windows. Но после обновления платформы может понадобиться заново загрузить драйвер подключаемого оборудования нужной разрядности.
Чем термопечать отличается от термотрансферной в настройках?
Термопечать идёт на термобумагу без риббона, термотрансфер — через красящую ленту. Если в драйвере выбран термотрансфер, а риббона нет, принтер выдаёт ошибку или пустые наклейки.
Принтер печатает, но с большим отступом сверху. Что сделать?
Откалибруйте датчик и проверьте смещение печати (top offset) в драйвере. Поле сверху в шаблоне 1С тоже должно быть нулевым.