← На главную
При работе с алкогольной продукцией в режиме кассового рабочего места (РМК) конфигурации 1С:Розница пользователи часто сталкиваются с проблемой: одномерные штрихкоды товаров сканируются нормально, но при попытке считать двумерный код акцизной марки (PDF417 или DataMatrix) считывание сбрасывается, форма очищается, а подбираемый товар исчезает без вывода ошибок.
Рассмотрим подробно, почему возникает подобная ситуация при работе сканера в режиме эмуляции клавиатуры (USB HID) и как правильно настроить оборудование и платформу 1С для стабильного считывания марок ЕГАИС.
Выясним причину сбоя при сканировании 2D-кодов
Проанализируем механику работы сканера в режиме эмуляции клавиатуры. В отличие от линейного штрихкода EAN-13, содержащего всего 13 цифр, акцизная марка ЕГАИС состоит из длинной последовательности латинских букв, цифр и спецсимволов.
Если драйвер подключаемого оборудования в 1С не настроен или не перехватывает поток данных как внешнее событие, операционная система воспринимает сканирование как быстрый ручной ввод символов с клавиатуры напрямую в активное окно формы:
- Влияние русской раскладки клавиатуры: Если в Windows включена русская раскладка клавиатуры, латинские символы из 2D-кода трансформируются в кириллицу или комбинации горячих клавиш.
- Срабатывание управляющих клавиш: Служебные символы и буквы на русской раскладке могут нажимать системные кнопки (например,
Esc, Tab, Alt), что приводит к закрытию диалога ввода акцизной марки, очистке табличной части или сбросу фокуса ввода.
- Отсутствие обработки события: Если пользователю приходится нажимать клавиши
Alt+F7 или F7 для вызова окна поиска, это прямо указывает на то, что драйвер 1С не получает сигнал о завершении сканирования и не вызывает обработчик внешнего события.
Шаг 1. Настройка суффикса и внешнего события в 1С
Разберем по шагам, как заставить 1С перехватывать ввод со сканера-клавиатуры автоматически без использования горячих клавиш.
- Запрограммируйте суффикс в самом сканере: Используя руководство пользователя к вашей модели сканера (или сервисные штрихкоды из документации), настройте передачу суффикса CR (Carriage Return / Возврат каретки), что соответствует ASCII-коду
13. Префиксы при этом рекомендуется полностью отключить.
- Перейдите в настройки оборудования 1С: Откройте раздел Администрирование — Подключаемое оборудование — Сканеры штрихкодов.
- Укажите параметры драйвера: В настройках экземпляра драйвера (например,
1С:Сканеры штрихкодов (NativeApp)) укажите порт Клавиатура, задайте параметр Суффикс равным 13, а поле префикса оставьте пустым.
- Проверьте разрядность платформы: Убедитесь, что клиентское приложение 1С запущено в 32-разрядном режиме (32-bit), так как многие внешние компоненты и драйверы торгового оборудования не работают в 64-битных клиентах.
- Перезапустите сеанс: Завершите работу в 1С:Розница и зайдите в программу повторно для корректной инициализации драйвера в памяти.
Шаг 2. Проверка работы сканера в справочнике и РМК
Проверим правильность выполненных настроек на практике:
- Откройте список справочника
Номенклатура.
- Не нажимая никаких клавиш на клавиатуре, отсканируйте одномерный штрихкод товара. Курсор в списке должен автоматически позиционироваться на найденной позиции. Это подтверждает, что 1С успешно перехватывает сигнал от клавиатурного сканера как внешнее событие.
- Перейдите в режим кассового рабочего места (РМК). При считывании товара позиция должна сразу попадать в чек, а при считывании акцизной марки алкоголя открывающееся окне ввода 2D-кода должно успешно принимать марку без очистки формы и ошибок.
Шаг 3. Альтернативное решение — перевод сканера в режим виртуального COM-порта (USB-VCP)
Режим эмуляции COM-порта полностью исключает проблемы с раскладкой клавиатуры Windows и перехватом управляющих символов. Если сканер сканирует коды настройки, но не переходит в режим COM-порта, выполните следующие действия:
- Установите драйвер USB-VCP: Загрузите и установите на кассовый компьютер официальный драйвер виртуального COM-порта от производителя сканера до перевода устройства в новый режим. Без драйвера в ОС сканер не сможет инициализировать порт.
- Сбросьте настройки сканера: Отсканируйте из руководства управляющий код сброса к заводским параметрам (
Default Settings).
- Считайте последовательность штрихкодов: Перевод в режим COM-порта часто требует последовательного считывания кодов: Вход в режим настройки → Выбор интерфейса USB-COM / VCP → Сохранение и выход.
- Укажите COM-порт в 1С: Откройте «Диспетчер устройств» Windows, найдите номер появившегося порта в разделе «Порты (COM и LPT)» (например,
COM3) и укажите его в настройках подключаемого оборудования 1С вместо значения Клавиатура.