Эмуляция работы сканера штрих-кода. Настройка подключения сканера штрих-кода в 1С 7.7 и 1С 8.

31.08.14

Интеграция - Сканер штрих-кода

Если под рукой нет сканера штрих-кода, а нужно проверить, отладить, работу программы. Работу сканера штрих-кода можно эмулировать с помощью программ. Описан пример эмуляции: настройка используемых программ и настройка подключения сканера штрих-кода в 1С 7.7 и 1С 8.

 

Эмуляция работы сканера штрихкода

Если под рукой нет сканера штрихкода, а нужно проверить, отладить, работу программы.
Есть два варианта:

  • использовать стандартные средства для работы со сканером штрихкода и эмулировать сам сканер штрихкода, как будто он физически подключен к COM-порту (рассматривается в этой статье);
    преимущества: проверяется полная работоспособность 1С работы со сканером штрихкода, как в рабочих условиях;
    недостатки: установка и настройка дополнительного ПО.
  • использовать специальные обработки эмулирующие события (для 1С 8 - через стандартные процедуры, для 1С 7.7 - через внешние компоненты - см. ссылки в конце статьи);
    преимущества: более простая установка и настройка ПО и обработок;
    недостатки: исключает проверку настроек и библиотек работы со сканером штрихкода, т.к. генерируется само событие (нужно знать параметры события для правильного вызова)

Работу сканера штрихкода можно эмулировать с помощью программ.

Для посылки данных на COM-порт можно использовать программу "COM Port Data Emulator" (бесплатная). "COM Port Data Emulator" эмулирует устройство подключенное к COM или Ethernet.

Для эмуляции COM-порта, а точнее для создания виртуально связанной между собой пары COM-портов можно использовать программу "Virtual Null Modem" (trial) или "Virtual Serial Ports emulator" (бесплатная).

Создание виртуальных COM-портов будет рассмотрено как  с использованием Virtual Null Modem, так и с использованием Virtual Serial Ports emulator.  

1. Для начала создадим связанную пару виртуальных COM портов. Порты будут связаны между собой так, как будто это порты на разных устройствах соединенные между собой кабелем (в нашем случае: порт на ПК и порт на сканере ШК).

1.(1) Создание связанной пару виртуальных COM портов с использованием Virtual Null Modem.
Устанавливаем и запускаем Virtual Null Modem (VNM).

В окне VNM создаем пару COM портов:  «Устройства - Добавить виртуальный нуль-модем»

Virtual Null Modem 

 Окно «Виртуальные порты»:

Первый виртуальный порт - COM10.

Второй виртуальный порт - COM11.

Тип нуль-модема:  «С полным контролем передачи».

Окно Виртуальные порты

Нажимаем  «ОК»

Если тип старта «Ручной», то для активации портов в системе нужно выбрать пункт меню: «Система - Активировать все виртуальные нуль-модемы».

1.(2) Создание связанной пару виртуальных COM портов с использованием Virtual Serial Ports Emulator.
Устанавливаем и запускаем Virtual Serial Ports Emulator.

Для начала, установим русский язык интерфейса:  «Language - Russian»

В окне VSPE переходим к созданию пары COM портов:  «Устройство - Создать»

VSPE - запуск настройки 

 Окно «Тип устройства»:

Окно Тип устройства

Здесь выбираем тип устройства «Pair» (т.е. "Пара"). Нажимаем «Далее».

 Окно «Тип устройства»:

Здесь выбираем тип устройства «Pair» (т.е. "Пара")

Первый виртуальный порт - COM10.

Второй виртуальный порт - COM11.

Окно Характеристики устройства

 

Запуск эмуляции:

 Для запуска выбираем в меню «Эмуляция - Запуск»

Окно VSPE - эмуляция

 

2. Теперь настраиваем подключение сканера штрихкода в 1С.

Показаны примеры подключения как для 1С: Предприятие 7.7, так и 1С: Предприятие 8.

2.(1) Настройка подключения сканера штрихкода в 1С: Предприятие 7.7.

 Настройка подключения в 1С 77

2.(2) Настройка подключения сканера штрихкода в 1С: Предприятие 8.

 Настройка поключения в 1С 8


Когда сканер штрихкода настроен, можно его проверить.

3. Непосредственно эмуляция сканера штрихкода 

Устанавливаем и запускаем COM Port DE (эмулятор).

COM Port Data Emulator

На начальной вкладке  «Device»: выбираем пункт «Serial port», устанавливаем следующие параметры «11»; «9600,8,N,1»; «None». Как на рисунке.  «11» - это номер COM-порта, указанного в VNM вторым.

Переходим ко второй вкладке  «Data source». Здесь есть множество настроек. Разберем самый простой вариант использования.

 

Устанавливаем режим «Data source» в «Text strings» (т.е. источник данных – это строки текста).

Далее два варианта:

  1. Простой. Вводим одну строку текста – нужный штрихкод. При нажатии кнопки «Start» программа через COM 11 отправит штрихкод на COM 10, как и настроено, так как будто это реальный сканер штрихкода, подключенный к .COM 10. Замечание: даже если задано будет несколько строк со штрихкодами, отправлена будет только первая.

  2. Списком. Вводим несколько строк со штрихкодами, например, как на рисунке. Включаем флаг автоматической отправки с интервалом «Auto sending interval (ms)». Выбираем режим интервала «Fixed» (фиксированный), указываем интервал, в миллисекундах. При нажатии кнопки «Start» программа будет отправлять штрихкоды построчно, с указанным интервалом времени между строк.

Остановить цикл отправки можно нажав кнопку «Stop» на вкладке «Log», где отражаются все отправленные данные.

Важное замечание

 Не пытайтесь проверить эмуляцию сканера штрихкода встроенной функцией "Тест устройства" (одинаково для 1С 77 и 1С 8):

Как видно из рисунка, данная функция занимает все порты в системе, в том числе и порт COM 11 являющийся связующим звеном в связке COM 10 - COM 11. Таким образом эмулятор не сможет отправить штрихкод на COM 10 через COM 11, так как COM 11 уже занят этим "тестом". Эмулятор выдаст соответствующую ошибку о занятости порта.

___________________________________________________

Варианты эмуляции работы сканера штрихкода с помощью обработок, генерирующих события

См. также

Сканер штрих-кода Розничная торговля Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Обработка представляет собой аналог обработки обслуживания для подключения сканеров штрихкодов на базе драйверов от Атол к типовым конфигурациям 1С8. Как правило, интеграция сканера штрихкодов в конфигурациях 1С7.7 ограничивается подключением при старте системы внешней компоненты из поставки драйверов Атол и прописыванием во всех нужных местах ОбработкиВнешнегоСобытия() для реакции на считываемые штрихкоды. Настройки подключения сканера можно установить на дополнительной вкладке в меню Сервис \ Драйвера устройств ввода. К сожалению настройки эти надо производить непосредственно под сеансом конечного пользователя (и для каждого пользователя). Кроме того, они иногда слетают и приходится заново их настраивать. Устранить эти недочеты и призвана моя обработка. Тестировалось на версии драйвера торгового оборудования Атол 6.4.1.359, версия платформы 1С 7.7.027, конфигурация ТиС для Украины 036 (Хотя конфигурация не важна, общие процедуры и функции или объекты конфигурации не используются).

1 стартмани

26.03.2018    17933    9    Vortigaunt    0    

2

Сканер штрих-кода Розничная торговля Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Абонемент ($m)

Драйвер торгового оборудования и приложение для Android, телефон или планшет в качестве стандартного штрихкод сканера для платформы 1С.

3 стартмани

29.11.2016    65084    215    dreamadv    119    

152

Оптовая торговля Розничная торговля Перенос данных 1C Сканер штрих-кода Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Управленческий учет Платные (руб)

ПО «Информационный киоск» предназначено для организации offline доступа клиента (покупателя) к информации о товарах, услугах или дисконтных картах посредством сканирования штрих-кода. Основная цель – мгновенно предоставить наиболее актуальную информацию о цене, остатках, наименовании товара (услуги) или накоплениях, держателе, состоянии дисконтной карты.

1800 руб.

21.12.2014    59948    8    21    

20

Сканер штрих-кода Системный администратор Программист Платформа 1С v7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)

Обработка превращает ПК с запущенной 1С в информационный киоск для вывода информации о товаре при сканирования штрих-кода.

1 стартмани

22.10.2014    24242    10    etmarket    23    

3

Работа с интерфейсом Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Управленческий учет Абонемент ($m)

Была необходимость обработать события сканера штрихкода при его физическом отсутствии. Чего-то более-менее дельного в сети найти не удалось, пришлось разбираться в том, как можно симулировать работу сканера. Вот результат.

1 стартмани

22.05.2014    16283    199    Retributor    7    

19

Сканер штрих-кода Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Внешняя компонента Shakmaev, поможет распознать штрих-код, используя обычную веб камеру реализована под 1Сv7.7

1 стартмани

05.03.2014    25048    30    waizz    7    

6

Сканер штрих-кода Рабочее место Розничная торговля Пользователь Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Розничная и сетевая торговля (FMCG) Россия Бухгалтерский учет УСН Абонемент ($m)

Обработка работает на платформе 1С 7.7 УСН (без изменения конфигурации). Предназначена для регистрации розничных продаж в торговом зале небольшого магазина (мини- микро маркета). Использует штрих-код номенклатуры. Обработка делалась для себя и, в принципе, продолжает дорабатываться в процессе эксплуатации, посему кому интересно - следите за обновлениями. В 2015 году планируется опубликовать аналог под 1С 8.2-8.3

1 стартмани

03.06.2013    19188    10    ionfox    1    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. tdr1225 37 22.05.13 09:31 Сейчас в теме
(1) Статью не читал, т.к. много букв.
Мне для эмуляции сканера хватает ВнешнееСобытие() из FormEx'a
Описание, как это делается, можно уместить в 2-3 строки.
3. 1st 243 22.05.13 17:35 Сейчас в теме
(1) tdr1225, в случае непосредственной генерации события не отработает библиотека сканера штрихкода.
Кроме того, полагаю, что для генерации события необходимо знать параметры вызова, чтобы событие было обработано так как нужно. Хоть эти параметры и нетрудно узнать, но для этого понадобится генерация этих события библиотекой, т.е. нужен подключенный сканер.
При всем этом соглашусь с Вами, что, если не учитывать все нюансы с генерацией через FormEx, генерация события в большинстве случаев была бы достаточна.
2. serega3333 22.05.13 12:59 Сейчас в теме
крутой мануал, надо будет покурить когда столкнусь
4. aspirator23 339 23.05.13 21:09 Сейчас в теме
Интересно описана эмуляция сканера. А как эмулировать com-порт для настоящего сканера на Windows х64?
Есть известный эмулятор com-портов для х32.
5. 1st 243 24.05.13 20:19 Сейчас в теме
(4) aspirator23, не могу понять Ваш вопрос. У Вас есть USB сканер, но Вы его не можете подключить к Windows (какой кстати?) х64, потому что не смогли найти 64битные драйвера USB с эмуляцией COM-порта?
6. aspirator23 339 24.05.13 20:37 Сейчас в теме
(5) К Windows 7 х64 не могу подключить USB сканер.Не могу найти драйвер для эмуляции сом порта .На х32 работает - есть эмулятор.
7. 1st 243 24.05.13 21:44 Сейчас в теме
(6) aspirator23. Если производитель HoneyWell то у них на сайте есть драйвер (см. в архиве - там для х32 и х64): honeywellaidc.com - Выбор сканера - после выбора сканера на закладке SoftWare.
8. aspirator23 339 25.05.13 06:51 Сейчас в теме
(7) Спасибо за информацию
9. Artemuch2 25.05.13 18:59 Сейчас в теме
ДА штука безусловно нужная и полезная особенно для разработчиков
10. Nebiros777 5 19.02.14 15:35 Сейчас в теме
Что-то не ловит у меня внешнее событие по этим настройкам. Несколько раз все перепроверил и ноль реакции. Правда и "Предприятие" у меня запускается через внешнюю обработку. У кого-нибудь кроме автора работает?
11. 1st 243 03.03.14 19:55 Сейчас в теме
(10) Nebiros777, Уточни, речь идет о настройке сканера ШК в 1С, или об эмуляции COM-порта. Какая версия 1С:Предприятие? Какая версия Windows?
12. whtblck 96 13.03.14 13:39 Сейчас в теме
сто лет назад качнул себе приблуду - эмулятор сканера ШК.
по сей день пользуюсь без всего вышеописанного и горя не знаю
CheBurator; Imelior; +2 Ответить
14. ValeriVP 1338 12.04.14 12:17 Сейчас в теме
(12) Поделись плиз эмулятором сканера ШК
15. whtblck 96 18.04.14 12:35 Сейчас в теме
16. пользователь 31.07.14 14:45
Сообщение было скрыто модератором.
...
19. 1st 243 01.09.14 02:05 Сейчас в теме
(16) bsa28000, (17) Alexey_A, (18) Imelior,
Смотрите ссылки в конце статьи:
1С 7.7: http://infostart.ru/public/14587/
1С 8.2: http://infostart.ru/public/283453/
17. пользователь 20.08.14 12:17
Сообщение было скрыто модератором.
...
24. пользователь 24.08.16 20:44
Сообщение было скрыто модератором.
...
25. whtblck 96 25.08.16 08:42 Сейчас в теме
(24) kirulbek, в (19) ведь 1st написал - есть ссылки, качать можно, бесплатно.
у меня эмулятор только 7-рочный, там еще есть и 8-рочный.
7-рочный намылил
33. пользователь 28.07.20 09:40
Сообщение было скрыто модератором.
...
18. пользователь 31.08.14 22:25
Сообщение было скрыто модератором.
...
28. RocKeR_13 1366 11.12.17 17:33 Сейчас в теме
(12) он просто генерирует оповещения через ПодключитьОбработчикОжидания. Для УТ пойдет, а в рознице, например, штрихкоды в форме ловятся из внешних событий
13. whtblck 96 26.03.14 17:11 Сейчас в теме
для пользователя "Wing"
Не могу отправить личное сообщение, требуют бабок.
Давай мыло, намылю
29. Grubly 17.01.18 13:50 Сейчас в теме
(13) whtblck, Александр, вышли и мне пожалуйста обработку! Tpavka@yandex.ru СПАСИБО!
20. mnitsi 14 14.10.14 15:04 Сейчас в теме
Спасибо за статью, очень выручила!!! Единственное, почему то COM Port DE (эмулятор) на Рознице 2.1 в режиме РМК не сразу срабатывал, только после нажатия постоянного считывания эмуляция считывания сканером происходила в 1С.
21. 1st 243 14.10.14 21:22 Сейчас в теме
(20) mnitsi, не совсем понял фразу "постоянного считывания" - имеется ввиду "Repeat Mode" (циклом) в программе CPDE?
Скорее всего у Вас так получилось потому, что в момент передачи штрихкодов программой CPDE, само окно 1С8 не было активно, либо не было активно окно формы, принимающей штрихкоды. Дело в том что в 1С8 в процедуре обработки события формы есть проверка на активность окна, и если окно не активно - событие не обрабатывается (пропускается).
22. slavik27 101 29.10.14 17:06 Сейчас в теме
спасибо, отличная статья. все работает и эмулирует
23. markers 277 24.08.16 18:59 Сейчас в теме
Спасибо! Тот самый момент когда надо проверить реакцию программы на штрихкод, а в программе есть условие "ВводДоступен()" и как на зло, нет сканера под рукой.
26. jaroslav.h 180 31.10.16 11:40 Сейчас в теме
27. jsmith 01.09.17 17:03 Сейчас в теме
30. user937633 04.02.20 16:33 Сейчас в теме
Спасибо, все работает, немного неудобно, что в 1с коды прилетают только при активном окне.
31. 1st 243 04.02.20 21:51 Сейчас в теме
(30) В конфигурации специально так прописано, иначе, при множестве окон (обрабатывающих штрихкод) - каждое открытое окно получало бы и обрабатывало полученный штрихкод.
32. Gazza 5 03.06.20 21:42 Сейчас в теме
Спасибо. То что было нужно - в УТ в 106 релизе похерили работу со сканером штрихкода через NativeApi и ваша статья очень помогла протестировать работу через COM
34. StasN 23.09.20 08:38 Сейчас в теме
почему то в Virtual Serial Ports Emulator именно порты 10-11 не отображаются, их нельзя выбрать, при этом в диспетчере устройств проверил, виртуальный порты добавились, в общем не понятно, настроить не получается...

//
сорри, разобрался
Прикрепленные файлы:
35. 1st 243 23.09.20 20:32 Сейчас в теме
(34)
в Virtual Serial Ports Emulator именно порты 10-11 не отображаются

Правильно, эти порты у Вас созданы программой Virtual Null Modem, повторно их создать уже нельзя.
Полагаю что Вы хотели выбрать созданные порты для посылки данных, но ошиблись в выборе программы: для посылки данных нужно использовать программу "COM Port Data Emulator".
А "Virtual Null Modem" и "Virtual Serial Ports emulator" только для создания портов.
36. andy_zhav 197 28.09.20 13:37 Сейчас в теме
Лет пять назад в результате долгих и нудных поисков в сети определил для себя связку "Virtual Serial Ports emulator" и "COM Port Data Emulator" как базовый набор для разработки обработок обслуживания оборудования на 1с.
serverstar; +1 Ответить
41. MaratArt 21.05.21 21:33 Сейчас в теме
(36)
Virtual Serial Ports emulator

(36)Поделитесь опытом, по получается настроить взаимосвязь "Virtual Serial Ports emulator" и "COM Port Data Emulator" с розницей 2.3
37. researcher01 108 16.01.21 04:20 Сейчас в теме
Автору большущее спасибо, отладил ошибку в РМК на УТ 10.3 которая возникала именно при считывании штрих кода
38. Ktyre 02.03.21 17:40 Сейчас в теме
многие картинки с радикал фото умерли, обновить не получится?
39. 1st 243 03.03.21 05:31 Сейчас в теме
(38)
картинки
У меня все картинки отображаются. Проверьте еще раз.
40. Zixxx 25.03.21 21:50 Сейчас в теме
Почему-то не приходят события в 1с
VSPE 10 <=> 11 статус готов и ок когда COM эмулятор шлет данные
COM эмулятор шлет на 11 с повтором
В 1с настроил сканер на COM 10
В тесте сканера видны посылки COM10: 4605246009327

Блин 1с УТ 10.3 никак не реагирует, если открыть заказ покупателя то ничего не происходит. Ошибок никаких нет
Совместимость драйвера ScanOpos уже выставил как и требует релиз.
Пробовал VSPE 32 и 64, пробовал на Розницу 2.3

В чем может быть еще проблема?
42. novick.off 27.05.21 09:06 Сейчас в теме
(40) А внешнее событие подключено в форме? При отладке вообще реакции нет?
43. user1729996 18.01.22 18:02 Сейчас в теме
Как через COM-порты передавать различные изображения с однго комптютера на другой .
Например , на первом ПК были отсканированы картинки и их надо через COM-порты передать на 2-ой ПК и там просмотреть эти отсканированные картинки .
Оставьте свое сообщение