При автоматизации рабочего места кассира (РМК) на базе конфигураций «1С:Розница 8.2» часто возникает задача подключить обычный нефискальный чековый термопринтер с интерфейсом USB (например, Citizen, Posiflex, Xprinter или другие модели). Сложность заключается в том, что в типовом справочнике торгового оборудования старых версий конфигураций отсутствует отдельный тип устройства «Принтер чеков» — в системе предусмотрены только фискальные регистраторы (ФР) и их эмуляторы. Разберем по шагам, как правильно настроить операционную систему, конфигурацию 1С и подключить чековый принтер для бесперебойной печати чеков при пробитии оплаты.
Проанализируем, почему нельзя просто добавить принтер как обычное офисное устройство без дополнительной настройки. Типовой механизм РМК при завершении чека обращается к подсистеме торгового оборудования и вызывает методы фискализации. Если оборудование не зарегистрировано в торговом оборудовании, интерфейс кассира не отправляет команды на печать автоматически.
В базовых версиях конфигураций метаданные закрыты для редактирования, поэтому доработка типовых модулей конфигурации невозможна. Единственным корректным решением является использование внешней обработки обслуживания торгового оборудования. Мы подключаем устройство в категорию Фискальные регистраторы, но в качестве драйвера указываем внешнюю обработку эмулятора ФР или специализированный драйвер печати на Windows-принтер.
Разберем первоначальную подготовку операционной системы:
Выясним, как связать логику РМК с установленным системным принтером:
.epf). Обработка представляет собой модифицированный эмулятор ФР, который перехватывает команды печати чека и отправляет табличный документ на выбранный принтер Windows без открытия диалогового окна.Рассмотрим распространенную ситуацию: при пробитии чека в РМК транзакция проходит, ошибок не возникает, но принтер не начинает печать. Причиной такого поведения часто является работа механизма контроля учетных записей (UAC) в операционной системе Windows.
Если внешняя обработка формирует временные файлы отчетов или обращается к системным библиотекам и спулеру печати без повышенных привилегий, процесс блокируется операционной системой. Для устранения проблемы необходимо запустить 1cv8.exe от имени администратора либо настроить права доступа пользователя на рабочие каталоги временных файлов и папки профиля 1С.
Если принтер печатает чек корректно, но текст выходит бледным или нечетким, проанализируем основные причины и методы решения:
ТабличныйДокумент = Новый ТабличныйДокумент;
// Заполнение табличного документа по макету чека
// ...
ТабличныйДокумент.ИмяПринтера = ИмяВыбранногоПринтераWindows;
ТабличныйДокумент.АвтоМасштаб = Истина;
ТабличныйДокумент.ПолеСлева = 0;
ТабличныйДокумент.ПолеСправа = 0;
ТабличныйДокумент.ПолеСверху = 0;
ТабличныйДокумент.ПолеСнизу = 0;
ТабличныйДокумент.Напечатать(РежимПечатиТабличногоДокумента.Авто);
Такой подход обеспечивает автоматическую и стабильную печать товарных и кассовых нефискальных чеков прямо из интерфейса РМК без дополнительных диалогов и задержек в обслуживании покупателей.