June 25

Эмулятор сканера

Часто есть необходимость проверки работы во Frontol со сканером, а под рукой необходимого устройства нет.

Статья о подключении "эмулятора сканера"

К примеру, необходимо проверить работу по считыванию маркированного товара

ШК марки

Данные марки: 0104650063118448215Tu8vTq_VL12?<GS>93w/nD

отображение в notepad++

проверка марки в приложении ЧЗ на момент написания статьи

1 этап

Установка и настройка com0com

https://owncloud.atol.ru/s/tG5KzhWNTFfZhOW

  • запускаем инсталлятор, следуя далее инструкциям установщика
  • запускаем приложение после установки
на примере меню Пуск

или по пути установки

c:\Program Files (x86)\com0com\setupg.exe

  • задаем в верхней части приложения два порта, заранее НЕ существующих на данный момент в системе (проверяем свободные порты в диспетчере устройств)

Форма записи: «COM[номер]»

в примере это: COM100 \ COM101

нажать Apply

Теперь каждый раз, пока программа com0com будет запущена, эти два связанных виртуальных COM-порта будут появляться в списке устройств. Данные, что будут отправляться в один из них будет принимать другой

2 этап

Настройка сканера во Frontol

Создаем карточку сканера и указываем "связанный" COM-порт. В нашем примере это COM101

Нажимаем Поиск оборудования...

3 этап

Утилиты для работы с COM-портом

3.1 Serial Port Utility

https://owncloud.atol.ru/s/OLH7MBFzGbDJoNT

Указываем наш первый "связанный" COM-порт. В нашем примере это COM100

Start

Если все сделано корректно, то в нижнем левом углу увидим информацию, что порт открыт

  • режим отправки выбираем Text
  • вводим тестовые данные
  • Send

При этом в тесте драйвера устройств должны отобразиться наши переданные данные

обращаем внимание, что данные "пришли" с порта COM101

для передачи нашей марки можно целиком скопировать данные из notepad++ через буфер обмена

в утилиту

непечатный символ разделителей GS при этом не будет никак отображен

проверить корректность скопированных данных можно через Toolbox этой же утилиты

вставляем данные нашей скопированной марки

нажимаем TextToHex

Символ GS в HEX имеет код 1D

подсказка имеется там же в разделе ASCII Code...

"считанный" КМ в карточке сканера Frontol

'#29' - разделитель групп GS

рекомендуем задать суффикс нашему "сканеру" для исключения ошибок при передаче

самый простой вариант - это в конце посылаемой последовательности нажать Enter

далее добавляем полученный суффикс в параметры идентификации

Проверка работы "сканера" во Frontol

Журнал работы

ответ проверки КМ по РР

марка передана корректно, данные от "сканера" получены корректные

3.2 Hercules

https://owncloud.atol.ru/s/P3YlYwMAIW9CQHD

https://www.hw-group.com/software/hercules-setup-utility

Аналогично выбираем COM100

Открываем порт Open

Вставляем из буфера строку с маркой

Отправляем данные в порт Send

суффикс '#10' в данной утилите добавляется как '##10'

включение отображения символа разделителя групп

Hexdecimal

ASCII Names

Decimal