Как настроить сканер Honeywell Voyager 1450g для чтения маркировки МДЛП и Честный ЗНАК в 1С

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

При работе с маркировкой лекарственных препаратов (МДЛП) и других товарных групп пользователи часто сталкиваются с тем, что сканер штрих-кодов считывает двухмерные коды DataMatrix некорректно. Символы могут искажаться, заменяться русскими буквами, а в конце кода могут появляться «странные» знаки, например, знак равенства (=). Попытки программно отрезать эти символы или сбросить сканер до заводских настроек обычно не приносят результата.

В этой статье мы подробно разберем, почему возникают такие проблемы при работе со сканером Honeywell Voyager 1450g, выясним природу «лишних» символов в конце штрих-кода и пошагово настроим оборудование для корректной передачи данных в «1С:Предприятие».

Почему в конце кода появляются непонятные символы и знак равенства (=)?

Проанализируем структуру штрих-кода маркировки. Код формата GS1 DataMatrix, применяемый в системах МДЛП и «Честный ЗНАК», состоит из нескольких обязательных групп данных:

  1. GTIN (глобальный номер товарной продукции) — 14 цифровых символов.
  2. Индивидуальный серийный номер упаковки.
  3. Криптохвост (код проверки и подпись) — специальная защитная последовательность символов, обеспечивающая проверку подлинности препарата.

Криптографическая часть кода (криптохвост) шифруется по стандарту Base64. В этой кодировке знак равенства (=) является стандартным техническим символом заполнения (padding), завершающим строку.

Важно понимать: этот хвост и знак равенства в конце не являются ошибкой сканера или результатом сбоя прошивки. Это легитимная и обязательная часть кода маркировки. Если вы попытаетесь принудительно удалить эти символы на уровне настроек сканера или в кодовой базе 1С, государственная информационная система маркировки не сможет верифицировать этот код, и документ будет отклонен с ошибкой. Для быстрой проверки корректности и статуса считанных кодов в системе маркировки подойдёт обработка для запроса информации о кодах маркировки в «Честном Знаке».

Проблема режима клавиатуры (USB HID)

По умолчанию большинство сканеров поставляются настроенными в режим эмуляции клавиатуры (USB HID). При сканировании маркировки в этом режиме мы неизбежно сталкиваемся с двумя критическими проблемами:

  1. Зависимость от раскладки: если на компьютере пользователя активна русская раскладка клавиатуры, сканер передаст латинские символы криптохвоста кириллицей. 1С не сможет сопоставить полученную строку с реальным кодом маркировки.
  2. Потеря разделителей групп данных: стандарт GS1 предписывает использование невидимого управляющего символа GS (Group Separator, ASCII-код 29) для отделения одной группы данных от другой (например, серийного номера от криптохвоста). В режиме клавиатуры Windows либо полностью игнорирует этот символ, либо заменяет его на нажатие функциональной клавиши (например, F8). В результате 1С «склеивает» все поля в одну нечитаемую строку.

Для решения этих проблем лучшим и наиболее надежным способом является перевод сканера в режим эмуляции виртуального COM-порта (USB-COM).

Пошаговый алгоритм настройки эмуляции COM-порта для Honeywell 1450g

Рассмотрим последовательность действий для перевода сканера Honeywell 1450g в режим работы по виртуальному последовательному порту. Если просто отсканировать штрих-код переключения режима, сканер может перестать реагировать на штрих-коды и передавать данные на ПК, так как операционной системе потребуется специализированный драйвер.

Выполним процедуру правильно по шагам:

Шаг 1. Подготовка и установка драйвера

Перед физическим переключением сканера необходимо подготовить операционную систему компьютера:

  1. Временно отключите сканер Honeywell 1450g от USB-порта компьютера.
  2. Скачайте официальный драйвер виртуального COM-порта от производителя — Honeywell HSM USB Serial Driver.
  3. Распакуйте архив и запустите файл установки (обычно это Install-x64.bat или аналогичный исполняемый файл для вашей разрядности ОС) обязательно от имени администратора.
  4. Дождитесь завершения установки драйверов в систему.

Шаг 2. Перевод сканера в режим USB-COM

Теперь подготовим само устройство к передаче данных по новому протоколу:

  1. Подключите сканер Honeywell 1450g обратно к USB-порту компьютера.
  2. Возьмите официальное руководство пользователя (User Guide) для вашей модели сканера.
  3. Найдите раздел настроек интерфейса USB и отсканируйте штрих-код USB Serial (в некоторых инструкциях он также имеет системный код TRMUSB130).
  4. После сканирования устройство издаст характерный звуковой сигнал переинициализации. Windows должна обнаружить новое устройство и применить установленный ранее драйвер.

Проанализируем результат в операционной системе. Откройте Диспетчер устройств Windows и разверните ветку «Порты (COM и LPT)». Там должно появиться новое устройство, например: Honeywell USB Serial Device (COM3). Запомните номер выделенного COM-порта (в нашем примере это COM3).

Шаг 3. Подключение и настройка сканера в 1С

Перейдем к настройке интеграции торгового оборудования в информационной базе «1С:Предприятие»:

  1. Откройте программу 1С с правами администратора.
  2. Перейдите в меню НСИ и администрирование -> РМК и оборудование (или Подключение и настройка оборудования в зависимости от вашей конфигурации).
  3. Поставьте галочку «Использовать подключаемое оборудование» и перейдите в одноименное рабочее место.
  4. Создайте новый элемент оборудования с типом «Сканеры штрихкода».
  5. В поле «Драйвер оборудования» выберите сертифицированный драйвер, например, «1С:Сканеры штрихкода (NativeApi)».
  6. Нажмите кнопку «Настроить».
  7. В появившемся окне параметров укажите следующие настройки:
    • Порт: Выберите ваш виртуальный порт из списка (например, COM3).
    • Скорость: Оставьте значение по умолчанию (обычно 9600 или 115200).
    • Префикс: Не требуется (пусто).
    • Суффикс: Установите значение 13 (символ возврата каретки CR, чтобы 1С понимала завершение ввода кода).
  8. Нажмите кнопку «Тест подключения» (или «Тест устройства»). Просканируйте любой код маркировки с упаковки лекарства. В поле вывода теста должен отобразиться полный считанный штрих-код со всеми служебными символами разделителей (они могут отображаться как специальные знаки или пустые промежутки) и криптохвостом в неизменном виде.

Альтернативный вариант: настройка в режиме клавиатуры (USB HID)

Бывают ситуации, когда по техническим причинам (например, при работе в терминальном сессионном режиме RDP, где проброс COM-портов затруднен) необходимо оставить сканер работать в режиме эмуляции клавиатуры. Выясним, как заставить сканер Honeywell корректно передавать спецсимволы в режиме клавиатуры.

Для этого нам понадобится настроить сканер на передачу символа GS через альтернативную комбинацию клавиш:

  1. Найдите в руководстве Honeywell штрих-код настройки режима передачи управляющих символов ASCII.
  2. Отсканируйте код KBDCAS5. Этот штрих-код заставляет сканер эмулировать передачу символа GS путем быстрой генерации комбинации клавиш Alt + 029 на цифровой клавиатуре (NumPad).
  3. В настройках драйвера оборудования в 1С найдите поле «Символ GS» (или «Символ-разделитель») и пропишите там управляющий код #29 или соответствующую комбинацию, которую ожидает драйвер.

Этот способ позволяет избавиться от склеивания полей внутри DataMatrix даже при работе в обычном клавиатурном режиме, однако мы все равно настоятельно рекомендуем использовать эмуляцию COM-порта как наиболее стабильное решение. Для одновременной работы COM-сканера в нескольких базах или сессиях 1С можно использовать утилиту для перенаправления данных RS232 сканера в клавиатурный ввод.

Повышение качества считывания поврежденных кодов

Если ваш сканер Honeywell 1450g успешно передает данные, но испытывает трудности при считывании мелких, блеклых или напечатанных на блестящем блистере кодов DataMatrix, выполните следующие действия:

Настроив сканер по приведенным инструкциям, вы обеспечите стабильное и безошибочное распознавание кодов маркировки МДЛП в любых конфигурациях 1С.

← На главную