Как настроить 2D-сканер штрихкодов в режиме эмуляции клавиатуры для ЕГАИС в 1С:Розница?

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

При работе с алкогольной продукцией в режиме кассового рабочего места (РМК) конфигурации 1С:Розница пользователи часто сталкиваются с проблемой: одномерные штрихкоды товаров сканируются нормально, но при попытке считать двумерный код акцизной марки (PDF417 или DataMatrix) считывание сбрасывается, форма очищается, а подбираемый товар исчезает без вывода ошибок.

Рассмотрим подробно, почему возникает подобная ситуация при работе сканера в режиме эмуляции клавиатуры (USB HID) и как правильно настроить оборудование и платформу 1С для стабильного считывания марок ЕГАИС.

Выясним причину сбоя при сканировании 2D-кодов

Проанализируем механику работы сканера в режиме эмуляции клавиатуры. В отличие от линейного штрихкода EAN-13, содержащего всего 13 цифр, акцизная марка ЕГАИС состоит из длинной последовательности латинских букв, цифр и спецсимволов.

Если драйвер подключаемого оборудования в 1С не настроен или не перехватывает поток данных как внешнее событие, операционная система воспринимает сканирование как быстрый ручной ввод символов с клавиатуры напрямую в активное окно формы:

  1. Влияние русской раскладки клавиатуры: Если в Windows включена русская раскладка клавиатуры, латинские символы из 2D-кода трансформируются в кириллицу или комбинации горячих клавиш.
  2. Срабатывание управляющих клавиш: Служебные символы и буквы на русской раскладке могут нажимать системные кнопки (например, Esc, Tab, Alt), что приводит к закрытию диалога ввода акцизной марки, очистке табличной части или сбросу фокуса ввода.
  3. Отсутствие обработки события: Если пользователю приходится нажимать клавиши Alt+F7 или F7 для вызова окна поиска, это прямо указывает на то, что драйвер 1С не получает сигнал о завершении сканирования и не вызывает обработчик внешнего события.

Шаг 1. Настройка суффикса и внешнего события в 1С

Разберем по шагам, как заставить 1С перехватывать ввод со сканера-клавиатуры автоматически без использования горячих клавиш.

  1. Запрограммируйте суффикс в самом сканере: Используя руководство пользователя к вашей модели сканера (или сервисные штрихкоды из документации), настройте передачу суффикса CR (Carriage Return / Возврат каретки), что соответствует ASCII-коду 13. Префиксы при этом рекомендуется полностью отключить.
  2. Перейдите в настройки оборудования 1С: Откройте раздел Администрирование — Подключаемое оборудование — Сканеры штрихкодов.
  3. Укажите параметры драйвера: В настройках экземпляра драйвера (например, 1С:Сканеры штрихкодов (NativeApp)) укажите порт Клавиатура, задайте параметр Суффикс равным 13, а поле префикса оставьте пустым.
  4. Проверьте разрядность платформы: Убедитесь, что клиентское приложение 1С запущено в 32-разрядном режиме (32-bit), так как многие внешние компоненты и драйверы торгового оборудования не работают в 64-битных клиентах.
  5. Перезапустите сеанс: Завершите работу в 1С:Розница и зайдите в программу повторно для корректной инициализации драйвера в памяти.

Шаг 2. Проверка работы сканера в справочнике и РМК

Проверим правильность выполненных настроек на практике:

  1. Откройте список справочника Номенклатура.
  2. Не нажимая никаких клавиш на клавиатуре, отсканируйте одномерный штрихкод товара. Курсор в списке должен автоматически позиционироваться на найденной позиции. Это подтверждает, что 1С успешно перехватывает сигнал от клавиатурного сканера как внешнее событие.
  3. Перейдите в режим кассового рабочего места (РМК). При считывании товара позиция должна сразу попадать в чек, а при считывании акцизной марки алкоголя открывающееся окне ввода 2D-кода должно успешно принимать марку без очистки формы и ошибок.

Шаг 3. Альтернативное решение — перевод сканера в режим виртуального COM-порта (USB-VCP)

Режим эмуляции COM-порта полностью исключает проблемы с раскладкой клавиатуры Windows и перехватом управляющих символов. Если сканер сканирует коды настройки, но не переходит в режим COM-порта, выполните следующие действия:

  1. Установите драйвер USB-VCP: Загрузите и установите на кассовый компьютер официальный драйвер виртуального COM-порта от производителя сканера до перевода устройства в новый режим. Без драйвера в ОС сканер не сможет инициализировать порт.
  2. Сбросьте настройки сканера: Отсканируйте из руководства управляющий код сброса к заводским параметрам (Default Settings).
  3. Считайте последовательность штрихкодов: Перевод в режим COM-порта часто требует последовательного считывания кодов: Вход в режим настройки → Выбор интерфейса USB-COM / VCP → Сохранение и выход.
  4. Укажите COM-порт в 1С: Откройте «Диспетчер устройств» Windows, найдите номер появившегося порта в разделе «Порты (COM и LPT)» (например, COM3) и укажите его в настройках подключаемого оборудования 1С вместо значения Клавиатура.
← На главную