Пример работы со сканером штрихкода

Оборудование - Сканер штрих-кода

49

Этот пример позволяет быстро разобраться и подключить сканер штрихкода (com-порт  или usb в режиме эмуляции com-порта) к конфигурации в которой нет стандартной подсистемы работы с торговым оборудованием и, соответственно, не получится в готовом виде использовать типовую обработку обслуживания от 1с.

Для работы нужна компонента 1C: Сканер штрихкода версии 8.0.8. Обработку ОбслуживаниеСканераШК нужно добавить в конфигурацию - это простейшая обработка обслуживания сканера на базе типовой обработки. Настройки com-порта, для простоты, прописаны в коде самой обработки - по умолчанию com-порт №5. Обработка ТестСканера - позволяет сканировать и видеть результат, код обработки показывает пример подключения сканера и обработки события. Работа проверялась на популярном сканере Metrologic (Honeywell) Eclipse MS 5145 с интерфейсом USB.

Как подключить сканер Metrologic (Honeywell) Eclipse MS 5145 с интерфейсом USB? Возможно это будет кому-нибудь полезно, порядок действий:

1) скачать с сайта производителя драйвер USB Serial Emulation Driver (uni-directional).

2) Скачать с пользовательского сайта 1С (или ИТС) и установить компоненту.

3) Подключить сканер к компьютеру. По умолчанию данный сканер определяется как USB-клавиатура и, например, в блокноте сразу можно видеть результат сканирования.

4) С помощью книги из поставки сканера перепрограммировать интерфейс (последовательно сканируются штрихкоды "enter/exit configuration mode" - "enable uni-directional  USB Serial Emulation mode" - "enter/exit configuration mode").

5) После этого сканер должен появится в системе и нужно установить скачанный ранее драйвер, указав к нему путь в мастере установки драйверов windows) . Номер виртуального com-порта можно менять в диспетчере устройств windows.

6) Подключить к конфигурации обработки и проверить параметры порта.

upd: Если сканер подключен к компьютеру в режиме эмуляции клавиатуры(usb) или в разрыв клавиатуры (ps/2) то все совсем просто - не требуется никаких драйверов, сканер готов к работе сразу. Как я писал уже выше, сканер Metrologic (Honeywell) Eclipse MS 5145 с интерфейсом USB по умолчанию включается именно так. Как же использовать его в конфигурации без применения стороннего ПО и обрабатывать данные сканера в открытой форме, например обработки?

Как вариант, в этом случае сканеру нужно назначить пользовательский префикс. Например F7 - т.е. перед посылкой штрихкода сканер будет вызывать нажатие клавиши F7. Для рассматриваемого сканера нужно разобраться с примером из раздела "Code Bytes Usage" руководства и настроить префикс. Нужный суффикс - нажатие Enter - присутствует по умолчанию. Действия в 1С - в нужной форме создается кнопка с горячей клавишей F7, на которую вешается процедура обработки штрихкода. Пример см. в обработке ТестСканера(клавиатура) - код минимален.

Однако, подключение в com представляется мне более надежным, с той точки зрения, что сканер в разрыв клавиатуры активен всегда и возможен случайный ввод данных там, где это не требуется, чего можно избежать при подключении в com, обрабатывая событие от сканера только там, где это необходимо.

49

Скачать файлы

Наименование Файл Версия Размер
Сканирование
.zip 10,18Kb
13.04.11
443
.zip 10,18Kb 443 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. v_id 94 12.04.11 17:16 Сейчас в теме
А чего описание обработки одним куском, трудно на абзацы разбить?
2. avasl 60 12.04.11 17:47 Сейчас в теме
3. simol 13.04.11 11:30 Сейчас в теме
Эх, только вчера купил COM сканер :(
6. nafa 643 13.04.11 12:09 Сейчас в теме
(3) А в чем проблема с COM сканером? Для 1С он по любому лучше клавиатурного.
7. simol 13.04.11 14:15 Сейчас в теме
(6)Компы пошли без сом портов, раздражает наличие конвертора usb-com
8. nafa 643 13.04.11 19:36 Сейчас в теме
(7)
[quote]раздражает наличие конвертора usb-com[/quote]
Ну, например, кабель к Cipherlab 1500L USB как раз и представляет собой этот самый конвертор и внешне и программно (в системе появляется Virtual COM порт), так что хрен редьки не слаще.
4. simol 13.04.11 11:34 Сейчас в теме
А можно не двумя файлами, а архивом? А то за 2 дня качать неудобно
5. avasl 60 13.04.11 11:58 Сейчас в теме
9. simol 15.04.11 23:38 Сейчас в теме
У меня сейчас крыша съедит. Я тут 2 дня мучал сканер COM. В том числе в Вашей обработке. Вопросы следующие, может подскажете:

Если я комментирую в обработке установку параметров портов, даже номер порта, то сканер все равно работает. Почему? Я вместо установки сделал Сообщить(Драйвер.БитДанных) и остальные паарметры тоже вывел. Выводятся параметры (которые наверно по умолчанию), но почему выдает верный ком порт (на компе их 2, настоящий и usb-com. Сканер подключен к usb-com)? В частности БитДанных выводится 8. Даже если я сделаю Драйвер.БитДанных = 7, все равно за ним Сообщить(Драйвер.БитДанных) выдаст 8. В чем прикол?
10. simol 15.04.11 23:41 Сейчас в теме
+(9)Даже если я на сканере устанавливаю и 7 и 8 бит. Стоповых и 1 и 2. Все равно сканирует и выдает с Сообщить настройку: 8, Com3, 9600, 1
11. simol 15.04.11 23:57 Сейчас в теме
+(9)
Выполняю код:

ХочуУстановить = 7;
Драйвер.БитДанных = ХочуУстановить;
Сообщить("Хочу установить: " + ХочуУстановить);
Сообщить("Установлено: " + Драйвер.БитДанных);

получаю:
Хочу установить: 7
Установлено: 8
12. avasl 60 16.04.11 00:45 Сейчас в теме
Касаемо подключения через эмуляцию com-порта - 1)Обратите внимание, что в настройках виртуального COM-порта в диспетчере устройств, из настроек, по крайней мере у меня, присутствует только номер порта. Иных настроек, каковые имеются в свойствах реального COM-порта нет. 2) Установка номера порта имеет значение, причем важен порядок следования строк в коде - сначала БитДанных, а затем номер порта, иначе возникают проблемы. Также важно установить верный стоп символ - префикс. Насчет настроек Скорость = 9600 и СтопБит = 0 - я не могу сказать о них определенно в данном случае (виртуальный порт).
Советую вам исходить из того, что есть закрытая компонента, написанная 1с и соответствующая ей обработка обслуживания, сделанная той-же 1с. Свою обработку я сделал на базе стандартной, фактически оставив только самое главное - подключение/отключение и обработку события и это решение работает. Просто сделайте также.
13. serpol87 01.07.11 08:08 Сейчас в теме
Почему именно USB Serial Emulation Driver (uni-directional)? Есть ссылка на не битый архив, если есть возможность то выложи здесь. Плиззз
14. Nata 7 17.09.11 01:02 Сейчас в теме
Если бы не публикация, билась бы весь день. Спасибо.
16. avasl 60 21.09.11 09:55 Сейчас в теме
(14) спасибо за голос. (15) обратитесь к документации по конфигурации.
15. val1979 20.09.11 19:21 Сейчас в теме
конфигурация Альфа - авто. Не могу подключить сканер. Вроде все есть и оборудование видит, а работать отказывается. может кто подскажет куда копать?
18. smit1c 98 04.06.12 19:11 Сейчас в теме
Спасибо, как раз выдернуто то что необходимо из типовых!
19. shatt 38 26.09.12 12:07 Сейчас в теме
Спасибо большое, нужная вещь в нужное время! :)
20. kanalex 26 01.02.13 19:50 Сейчас в теме
4) С помощью книги из поставки сканера перепрограммировать интерфейс (последовательно сканируются штрихкоды "enter/exit configuration mode" - "enable uni-directional USB Serial Emulation mode" - "enter/exit configuration mode").

В книге (листочек А3) есть код USB Serial Emulation, однако после его сканирования ничего в оборудовании не появляется:(
Что-то я уже начал вообще сомневаться, что конкретно этот сканер умеет работать в режиме эмуляции СОМ порта:(

Honeywell Eclipse 5145

Префикс тоже не катит, т.к. программа написана на отлов события. Придется переписывать...
Не очень сложно, конечно, Но префикс поставить тоже не получилось:(
22. ikekoval 81 27.11.15 15:48 Сейчас в теме
(20) kanalex, На сайте Honeywell ищем по модели сканера документацию: "Configuration Guide".
На стр. 1-1 код ввода и вывода режима конфигуратора.
На стр. 8-1 коды для ввода до 10 кнопок префикса.
На стр. 16-1 коды битов. Биты надо вводить в десятеричной системе. Таблица соответствия клавиш на страницах с 16-2 по 16-8.

Во вложении коды для программирования клавиши F7 в 1 кнопку префикса.
Для задания f12 сканим не "150", а "155".

Для корректной работы в 1с возможно придется изменить задержку меджу префиксом и кодом. Это там тоже есть (в большой английской книге).
Прикрепленные файлы:
21. Millet 24.12.14 18:21 Сейчас в теме
Спасибо, было полезно.

Всегда подключал сканеры в режиме эмулятора ввода с клавиатуры, а сейчас понадобилось подключить напрямую.
23. info1i 24 18.02.18 04:33 Сейчас в теме
А про то, что время появления штрихкода может опережать время появления формы - ни слова.
Может, подскажете, как решили такой вопрос: https://forum.infostart.ru/forum28/topic187103/#message1933730
Оставьте свое сообщение