Как подключить USB принтер чеков XPrinter к 1С: подробная инструкция по настройке и решению проблем

Системный администратор 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

Подключение бюджетных китайских принтеров чеков, таких как XPrinter XP-58IIIA, к системе 1С часто вызывает трудности у технических специалистов. Основная проблема заключается в том, что 1С исторически ориентирована на работу с фискальными регистраторами через последовательный COM-порт (RS-232), в то время как современные недорогие принтеры оснащены только интерфейсом USB. В данной статье мы подробно разберем, как «подружить» эти устройства, настроить корректную печать кириллицы и обеспечить автоматическое открытие денежного ящика.

Постановка задачи и анализ ситуации

Рассмотрим стандартную ситуацию: в наличии имеется принтер XPrinter XP-58, который успешно установлен в операционной системе Windows как обычный принтер. Однако при попытке добавить его в 1С через раздел Подключение и настройка оборудования пользователь видит только список фискальных регистраторов и ККТ с передачей данных, требующих COM-соединения. Наша задача — настроить систему так, чтобы 1С воспринимала это устройство как «Принтер чеков» и отправляла на него данные без использования дорогостоящих драйверов.

Способ 1: Использование штатного драйвера «1С:Принтер чеков (Windows)»

В современных конфигурациях (например, 1С:Розница 2.2 и выше, УТ 11, ERP 2.4) разработчики 1С добавили встроенный механизм для работы с нефискальными принтерами. Проанализируем шаги по его настройке:

  1. Перейдем в меню НСИ и администрирование — РМК и оборудование — Подключаемое оборудование.
  2. Выберем тип оборудования «Принтеры чеков» и нажмем кнопку Создать.
  3. В поле Драйвер оборудования выберем стандартный вариант от 1С: «1С:Принтер чеков (Windows)».
  4. После сохранения карточки устройства нажмем Настроить.
  5. В открывшемся окне в поле «Имя принтера» выберем из выпадающего списка наш XPrinter, как он называется в панели управления Windows.
  6. Установим параметры ленты: для XP-58 ширина ленты обычно составляет 32 или 36 символов.

Этот метод является наиболее предпочтительным, так как он не требует эмуляции COM-портов и работает через стандартную службу печати Windows (Print Spooler).

Способ 2: Настройка через Generic / Text Only драйвер

Если при печати через стандартный драйвер производителя возникают задержки, странные отступы или иероглифы, мы рекомендуем использовать «чистый» текстовый протокол. Разберем, как это реализовать:

Во-первых, переустановим принтер в Windows. Вместо родного диска с драйверами выберем ручную установку и укажите производителя Generic, модель Generic / Text Only. Этот драйвер передает на принтер голые ASCII-коды без графической обработки.

Во-вторых, в настройках 1С (при использовании того же драйвера «1С:Принтер чеков») укажем кодировку IBM866 (она же PC866). Рассмотрим пример кода, который 1С отправляет на принтер в текстовом режиме:


// Пример формирования простой текстовой строки для чека
ТекстДляПечати = "ЧЕК №0001" + Символы.ПС;
ТекстДляПечати = ТекстДляПечати + "Товар: Сахар 1кг" + Символы.ПС;
ТекстДляПечати = ТекстДляПечати + "ИТОГО: 100.00 руб." + Символы.ПС;
// Отправка на принтер через объект драйвера
Результат = ОбъектДрайвера.ПечататьТекст(ПараметрыПодключения.Идустройсва, ТекстДляПечати);

Решение проблемы с иероглифами и кодировкой

Если принтер вместо русских букв печатает «кракозябры», это означает, что внутренняя кодовая страница принтера не совпадает с той, которую отправляет 1С. Для исправления ситуации проанализируем использование утилиты XPrinter Tool (Setting Tool):

  1. Подключим принтер к компьютеру и запустим утилиту.
  2. Нажмем Check Port, чтобы убедиться в связи с устройством.
  3. Найдем раздел настройки кодовых страниц (Code Page). Для корректной работы с кириллицей нам нужно установить Page 17 (Cyrillic / PC866).
  4. Нажмем Set или Update. Теперь принтер на аппаратном уровне понимает русскую кодировку 866.
  5. В самой 1С в настройках оборудования также обязательно укажем кодовую таблицу 17.

Подключение и настройка денежного ящика

Многих пользователей интересует вопрос: как сделать так, чтобы при нажатии кнопки «Оплата» в 1С автоматически открывался денежный ящик? Выясним механизм взаимодействия:

Денежный ящик подключается к принтеру через разъем RJ11. Принтер подает на него импульс тока, который открывает замок. Чтобы это работало из 1С, у нас есть два пути:

Путь А: Настройка в драйвере Windows. Зайдем в Устройства и принтеры — Свойства принтера — Настройки устройства. Там найдем пункт Cash Drawer и выберем значение Open before printing (Открыть перед печатью).

Путь Б: Программная команда. Если драйвер позволяет прямую отправку ESC-команд, 1С может послать специальную последовательность байтов. Рассмотрим типичную команду открытия ящика для протокола ESC/POS:


// Команда открытия денежного ящика (десятичные значения)
Команда = Символ(27) + Символ(112) + Символ(0) + Символ(25) + Символ(250);
// Где 27 - ESC, 112 - p, остальные параметры управляют длительностью импульса

Особенности для старых версий (1С:Розница 1.0, УТ 10.3)

В старых конфигурациях на обычных формах тип оборудования «Принтер чеков» может отсутствовать. В этом случае мы рекомендуем использовать сторонние разработки, такие как WinPrinter или «Эмулятор фискального регистратора».

Принцип работы эмулятора следующий: 1. Вы устанавливаете специальную внешнюю обработку (драйвер), которая имитирует работу дорогого Штрих-М или Атол. 2. 1С «думает», что работает с полноценным кассовым аппаратом через COM-порт. 3. На самом деле обработка перехватывает команды печати и перенаправляет их в макет 1С, который затем выводится на обычный USB-принтер.

Почему не стоит печатать этикетки на XPrinter XP-58?

Часто пользователи пытаются использовать чековый принтер для печати самоклеящихся этикеток. Проанализируем риски этого решения:

Для печати этикеток мы рекомендуем использовать специализированные устройства, например, XPrinter XP-365B, которые поддерживают оба режима работы.

Итоговые рекомендации

Подводя итог, можно сказать, что связка 1С + USB XPrinter абсолютно работоспособна без покупки дорогостоящего оборудования. Главное — правильно определить версию вашей конфигурации 1С. Если у вас современная база (БСП), используйте встроенный драйвер 1С:Принтер чеков (Windows). Если база старая — ищите эмулятор ФР. Не забывайте про утилиту настройки кодовых страниц, чтобы избежать проблем со шрифтами, и ваш бюджетный принтер прослужит вам долго и эффективно.

← На главную