При работе с принтером этикеток АТОЛ BP-21 в программе «1С:Управление торговлей» пользователи часто сталкиваются с неприятными техническими сбоями. Этикетка может сильно съезжать в сторону (чаще всего вправо), настройки размеров бумаги в диалоговом окне печати 1С сбрасываются при каждом сеансе, а принтер начинает выдавать пустые этикетки через одну.
В этой статье мы подробно разберем, как исправить механические ошибки заправки ленты, выполнить аппаратную калибровку принтера, правильно настроить параметры драйвера в операционной системе Windows и скорректировать макет в 1С, чтобы раз и навсегда решить проблемы со смещением печати.
Выясним главную причину, по которой печать на принтере АТОЛ BP-21 уходит далеко вправо. Конструкция этого принтера достаточно капризна к позиционированию расходных материалов. В отличие от многих других моделей, где рулон центрируется по середине, в АТОЛ BP-21 ленту с этикетками необходимо смещать строго к краю (направляющей стороне) и надежно фиксировать пластиковым ограничителем. Если установить рулон ровно по центру, печатающая головка будет позиционировать макет некорректно, из-за чего вся информация на этикетке сместится в сторону.
Выполним правильную заправку ленты по шагам:
Принтер АТОЛ BP-21 (конструктивно являющийся OEM-копией популярной модели Gprinter GP-2120T) может некорректно определять начало и конец этикетки. Это происходит, если устройство случайно переключилось в режим работы с чековой (непрерывной) лентой вместо этикет-ленты с зазорами, либо если датчик забился бумажной пылью.
Проанализируем процедуру проверки режима, калибровки и сброса принтера:
Шаг 1. Проверка текущего режима работы (Чек / Этикетка):
FEED и PAUSE.Receipt, принтер будет игнорировать зазоры и печатать некорректно.Шаг 2. Аппаратная калибровка датчика зазора:
PAUSE и, удерживая ее, включим питание устройства.Шаг 3. Полный сброс на заводские настройки:
Если принтер горит или мигает красным индикатором ошибки и не реагирует на команды калибровки, выполним сброс памяти. Выключим принтер, зажмем кнопку FEED и включим устройство. Дождемся, пока принтер распечатает строку Factory Default completed, после чего обязательно повторим калибровку датчика зазора, описанную в Шаге 2.
Шаг 4. Очистка датчика:
Бумажная пыль и остатки клея от термоэтикеток могут загрязнять оптический датчик зазора (светодиод на нижней панели под трактом протяжки ленты). Рекомендуется регулярно протирать глазок датчика и резиновый вал ватной палочкой, слегка смоченной в изопропиловом спирте.
Рассмотрим проблему, при которой при предварительном просмотре в 1С размер этикетки выглядит правильно, но при отправке на печать 1С сбрасывает выбранный шаблон, из-за чего принтер выдает пустые этикетки.
В операционных системах Windows настройки принтера, измененные пользователем внутри сессии 1С, часто не сохраняются. Чтобы решить эту проблему, настроим параметры печати по умолчанию непосредственно в операционной системе от имени администратора:
После выполнения этих действий операционная система зафиксирует данный размер бумаги как основной, и платформа 1С начнет корректно подтягивать его при каждом выводе на печать табличного документа. В качестве альтернативного системного решения можно применить расширение для печати этикеток в УТ 11.5 через БПО, переводящее процесс вывода на встроенные механизмы библиотеки подключаемого оборудования.
Совет: Если оригинальный драйвер от АТОЛ продолжает работать нестабильно и регулярно «теряет» связь с 1С, рекомендуется скачать и установить альтернативный драйвер от компании Seagull Scientific для модели-аналога Gprinter GP-2120T. Этот драйвер оптимизирован для работы со сложными макетами и гораздо стабильнее удерживает настройки печати.
Выясним, почему возникает ситуация, когда этикетки печатаются по схеме: «одна заполненная — одна пустая».
В платформе 1С за вывод печатных форм отвечает объект ТабличныйДокумент. Если физический размер этикетки, заданный в свойствах принтера, составляет, например, ровно 45х23 мм, а программный макет в 1С (с учетом невидимых полей) превышает этот размер хотя бы на 0.1 мм, система автоматически перенесет оставшуюся «лишнюю» часть документа на следующий лист. Поскольку на этой лишней части ничего нет, принтер просто прокручивает пустую этикетку.
Разберем по шагам, как исправить макет этикетки в конфигурации 1С:
Для разработчиков и администраторов, настраивающих печать этикеток программно, приведем пример правильной инициализации параметров ТабличногоДокумента в коде 1С:
// Настройка параметров табличного документа для печати без пустых листов
ТабДок = Новый ТабличныйДокумент;
ТабДок.ИмяПринтера = "ATOL BP-21";
ТабДок.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЭТИКЕТКА_45X23";
// Принудительно очищаем поля макета
ТабДок.ПолеСлева = 0;
ТабДок.ПолеСправа = 0;
ТабДок.ПолеСверху = 0;
ТабДок.ПолеСнизу = 0;
// Управляем масштабированием
ТабДок.АвтоМасштаб = Истина;
ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
Использование этого кода позволяет избежать ручной настройки параметров страницы пользователями и исключает влияние некорректно сохраненного кэша параметров печати в профиле пользователя 1С.