Как настроить сканер штрихкода Mercury CL200, если его данные попадают на порт кассы АТОЛ в 1С:Розница?

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

При настройке торгового оборудования в 1С:Розница 2.2 часто возникает ситуация, когда системный администратор или специалист по автоматизации сталкивается с «призрачными» данными в окне теста устройства. Типичный сценарий: подключены касса АТОЛ и сканер Mercury CL200, но при сканировании в тесте отображаются непонятные символы, якобы приходящие с порта ККТ. В этой статье мы подробно разберем, почему так происходит, как отличить служебный трафик кассы от данных сканера и как правильно настроить оборудование.

Разбор ситуации: почему данные «попадают» на порт ККТ

Проанализируем техническую сторону вопроса. Современные кассы АТОЛ (работающие на платформе 5.0 или 2.5) при подключении по USB создают в системе не один, а сразу два виртуальных COM-порта. Рассмотрим их назначение:

  1. Первый порт (например, COM5) — предназначен непосредственно для обмена данными между 1С:Предприятие и драйвером ККТ (печать чеков, X-отчеты).
  2. Второй порт (например, COM6) — используется службой EthernetOverUSB (EoU). Через него касса передает данные оператору фискальных данных (ОФД).

Выясним причину путаницы: когда вы открываете окно «Тест устройства» в 1С и выбираете там порт COM6, программа начинает «слушать» всё, что через него проходит. Поскольку служба EoU постоянно обменивается пакетами с сервером ОФД, вы видите в окне теста спецсимволы, такие как STX, RS, ACK, и даже IP-адреса. Рассмотрим пример таких данных: 193.0.214.11 — это типичный IP-адрес сервера ОФД. Пользователь ошибочно принимает этот трафик за результат работы сканера, хотя сканер в этот момент может быть вообще не настроен или находиться в другом режиме.

Шаг 1: Проверка видимости сканера в системе

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

1. Режим эмуляции клавиатуры (HID): В этом режиме сканер работает как обычная клавиатура. Если вы откроете «Блокнот» и сосканируете штрихкод, данные появятся в месте курсора. В «Диспетчере устройств» такой сканер будет находиться в разделе «Клавиатуры» или «HID-устройства». Именно поэтому пользователь часто «не видит его в диспетчере» в разделе COM-портов.

2. Режим эмуляции COM-порта (VCOM): В этом режиме сканер создает виртуальный последовательный порт. Это предпочтительный режим для 1С, так как он позволяет программе перехватывать данные штрихкода в фоновом режиме, даже если фокус ввода (курсор) не стоит в поле поиска. Однако для работы этого режима требуются специальные драйверы (обычно от Silicon Labs CP210x).

Шаг 2: Решение проблемы через перевод сканера в HID-режим

Если ваша задача — быстро запустить рабочее место и избежать конфликтов с портами ККТ, наиболее простым решением будет перевод сканера в режим эмуляции клавиатуры. Рассмотрим, как это сделать:

  1. Найдите инструкцию (руководство пользователя) для Mercury CL200.
  2. Найдите в ней управляющий штрихкод с названием «USB HID Mode» или «Keyboard Mode».
  3. Считайте этот код сканером. Устройство должно издать звуковой сигнал, подтверждающий смену режима.
  4. В 1С:Розница перейдите в «Администрирование» — «Подключаемое оборудование».
  5. Откройте настройки сканера и выберите драйвер «1С:Сканеры штрихкода (NativeApi)».
  6. В параметрах подключения укажите «Клавиатура» вместо конкретного порта COM.

Важный нюанс: Чтобы 1С корректно понимала окончание считывания штрихкода в режиме клавиатуры, обязательно запрограммируйте суффикс возврата каретки (CR или LF). В инструкции Mercury это обычно штрихкод «Add Enter Suffix».

Шаг 3: Настройка в режиме виртуального COM-порта (альтернативный способ)

Если вам требуется стабильная работа без привязки к раскладке клавиатуры, настроим сканер как COM-устройство. Разберем по шагам:

  1. Считайте из инструкции штрихкод «USB VCOM Mode».
  2. Зайдите в «Диспетчер устройств». Если в разделе «Порты (COM и LPT)» появилось неизвестное устройство с желтым восклицательным знаком, необходимо скачать и установить драйвер виртуального COM-порта с сайта производителя (Mercury или Silicon Labs).
  3. Запомните номер порта, который присвоила система (например, COM4). Убедитесь, что он не совпадает с портами кассы АТОЛ (COM5 и COM6).
  4. В настройках 1С укажите именно этот порт (COM4) и проверьте его через кнопку «Тест устройства». При сканировании вы должны увидеть чистый номер штрихкода без лишних символов.

Сравнение режимов работы: что выбрать?

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

Режим клавиатуры (HID):
Плюсы: Не нужны драйверы, простая настройка, работает «из коробки».
Минусы: Зависимость от фокуса ввода (курсор должен быть в программе), возможные проблемы с раскладкой (если штрихкод содержит буквы), риск случайного ввода данных в другие поля.

Режим COM-порта (VCOM):
Плюсы: Независимость от фокуса ввода, высокая скорость передачи, надежное отделение данных сканера от ввода пользователя.
Минусы: Сложность установки драйверов, риск «слета» номера порта при переключении сканера в другой USB-разъем компьютера.

Типичные ошибки при диагностике

Посмотрим на ошибки, которые часто совершают пользователи:

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

Для успешной настройки пары АТОЛ + Mercury CL200 выполните следующую последовательность действий:

  1. Отключите кассу физически от USB, чтобы освободить порты.
  2. Подключите сканер и определите его режим (HID или COM).
  3. Если сканер в HID-режиме — настройте его в 1С как «Клавиатура» с обязательным суффиксом CR (13).
  4. Если сканер должен быть в COM-режиме — добейтесь появления нового порта в диспетчере устройств, отличного от портов ККТ.
  5. Подключите кассу обратно и убедитесь, что драйвер ККТ направлен на правильный «печатный» порт, а не на порт EoU.

Таким образом, «магия» попадания данных на порт кассы объясняется простым совпадением активности сервисного порта АТОЛ и открытого окна диагностики в 1С. Разделение этих потоков данных — залог стабильной работы кассового узла.

← На главную