При автоматизации торговых точек часто используются бюджетные китайские сканеры штрихкода (например, Radall RD-1908 и его OEM-аналоги). По умолчанию такие устройства работают в режиме эмуляции клавиатуры (HID Keyboard) — считывают штрихкод, передают цифры в активное поле ввода и отправляют символ перевода строки (Enter / Carriage Return). В типовых конфигурациях 1С (в частности, «1С:Розница 1.0») для поиска товара без драйвера требуется предварительно вызвать диалоговое окно ввода по клавише F7. Если в документации к устройству отсутствуют управляющие штрихкоды для назначения префикса F7 или перевода в режим виртуального COM-порта (USB-VCP), стандартная интеграция вызывает затруднения.
Разберем причины некорректного считывания штрихкодов в клавиатурном режиме, выясним, почему стандартные драйверы могут терять символы, и рассмотрим рабочие способы стабильного подключения сканера к 1С.
Попытка настроить сканер на посылку клавиши F7 вручную через таблицы префиксов имеет ряд существенных ограничений:
F1–F12.2000000450095 в программу попадает 200000045095 с пропуском повторяющихся нулей). Изменение таймаута в настройках драйвера 1С (ScanOPOS) не устраняет аппаратную перегрузку буфера ввода.Самое стабильное и проверенное решение для конфигураций на обычных формах («1С:Розница 1.0», «1С:Управление торговлей 10.3») при работе с клавиатурным сканером — использование классического пакета драйверов торгового оборудования АТОЛ. В отличие от штатных компонентов 1С, перехватчик клавиатуры в библиотеке АТОЛ корректно обрабатывает входящий поток данных без потери символов.
Разберем по шагам порядок настройки:
1С:Сканер штрихкода (ScanOPOS), удалим или отключим его в списке торгового оборудования 1С, чтобы избежать двойного перехвата системных событий клавиатуры.DTO6_2009_02_11 (последняя полнофункциональная бесплатная редакция драйверов торгового оборудования АТОЛ). В состав пакета входит Драйвер устройств ввода.#13 — символ возврата каретки CR). Выполним тестовое сканирование. Убедимся, что штрихкод отображается целиком без пропущенных цифр.Сервис -> Торговое оборудование -> Подключение и настройка торгового оборудования. Выберем тип оборудования Сканеры штрихкода и добавим новое устройство. В качестве обработки обслуживания выберем внешнюю обработку для работы с драйвером АТОЛ (ATOLScaner.epf или соответствующую встроенную обработку).Клавиатура. Префиксы оставляем пустыми, суффикс устанавливаем #13.После завершения настройки 1С перехватывает считывание штрихкода в любом окне конфигурации через внешнее событие, исключая необходимость ручного нажатия F7.
Если требуется подключить подобный сканер в современных конфигурациях на управляемых формах или исключить работу с низкоуровневыми клавиатурными хуками, рассмотрим другие варианты:
10–20 мс). Это позволит стандартному драйверу ScanOPOS успевать обрабатывать каждый символ без пропусков.USB Virtual COM / CDC ACM. При переводе устройства в данный режим в диспетчере устройств Windows появится виртуальный последовательный порт (может потребоваться установка универсального драйвера виртуального COM-порта). В 1С такой сканер подключается через стандартный COM-порт, что гарантирует стопроцентную точность считывания независимо от загрузки процессора и активной раскладки.VID/PID USB-устройства и транслирующих их в виртуальный COM-порт операционной системы.