Распознавание BarCode Web-камерой и передача данных в 1С

09.02.24

Интеграция - Распознавание документов и образов

Программа позволяет распознать графический код посредством USB Web-камеры и записать результат в буфер обмена. Впоследствии его можно прочитать средствами 1С.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Распознавание BarCode Web-камерой и передача данных в 1С (с исходниками C#):
.zip 112,89Mb
3
3 Скачать (10 SM) Купить за 4 550 руб.
Распознавание BarCode Web-камерой и передача данных в 1С (без исходников):
.rar 54,71Mb
0
0 Скачать (6 SM) Купить за 3 350 руб.

Добрый день, уважаемые коллеги.

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

Что хочется: берем в руку камеру, в 1С нажимаем кнопку "Сканировать", наводим камеру на штрих-код, штрих-код считывается, результат возвращается в 1С.

Изыскания, как и многих других, привели меня к библиотекам Ozeki (особенно в части компьютерного зрения). В trial-версии SDK не обнаружил особенных помех для работы камеры, как мне кажется, эта тема касается только включенной в SDK работы с VoIP и телефонией.

Не забываем учесть то, что DLL являются свободно распространяемыми (Redistributable.DLL), о чем написано на сайте https://camera-sdk.com/.

 


Перед использованием приложения не будет лишним установить Ozeki_SDK.exe из скачанного архива installwindows_1700379824_Ozeki_SDK_10.4.13.zip

Прошу принять во внимание, что SDK у Ozeki постоянно совершенствуется и часто не имеет обратной совместимости с решениями, скомпилированными с использованием более ранних библиотек.

Моё решение было основано на базе решения из папки архива installwindows_1700379824_Ozeki_SDK_10.4.13.zip.

Использованы:

  • Windows 10 x64
  • Ozeki SDL installwindows_1700379824_Ozeki_SDK_10.4.13.zip

взято отсюда: https://camera-sdk.com/p_6513-download-onvif-ozeki-camera-sdk-for-c-sharp.html

Моё решение только для Windows, но, думаю, ничего не мешает скачать SDK для Linux и побаловаться с Android смартфонами.

Также мое решение работает только с USB-камерами, но, думаю, можно побаловаться в исходниках и с onvif.

-решение из папки %UserProfile%\Documents\Ozeki\Ozeki

SDK\Examples\Camera\04_ComputerVision\07_BarcodeDetection\BarcodeDetection

Мануал: https://camera-sdk.com/p_6514-online-manual-for-the-ozeki-camera-sdk.html

-Visual Studio 2017

-.NetFramework 4.8 (ndp48-devpack-enu.exe)

Что изменено/добавлено в решении:

-Если камера одна, то берется она. Если камер несколько, то можно выбрать (полезно для планшетов, где камер несколько).

-Сократил избыточные настройки инверсии и ротации штрих-кода. При желании каждый сможет их перекомпилить под себя.

-Прошелся через SonarLint SonarQube-ом и убрал некоторые Warning-и.

 


-Исключил сканеры из выбираемых устройств.

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

 

 

В приложении в поле списка справа снизу можно задать (отметить) перечень предпочтительных для прочтения кодов. ANY... - означает, что будут считываться все коды.

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

Приложение можно запустить из внешнего приложения или пакетного файла (в нашем случае 1С) используя для удобства следующие параметры запуска:
ClearBarcodeFieldBeforeReading - В программе автоматом установится галочка "Очищать при прочтении очередного кода.". Она нужна для того, чтобы в поле считанных штрих-кодов оставался только текущий считанный код.

ExitAndWriteBuffer - В программе автоматом установится галочка "Очищать при прочтении очередного кода.". Она нужна для того чтобы про распознавании очередного кода программа закрывалась и записывала содержимое текстового поля со штрих-кодами в буфер обмена Windows.

Впоследствии буфер можно читать другим приложением (в нашем случае 1С, из которой запущена программа).

  • TYPE_CODE_EAN_13 - Будет отмечен для считывания код типа EAN-13
  • TYPE_CODE_EAN_8 - Будет отмечен для считывания код типа EAN-8
  • TYPE_CODE_DATA_MATRIX - Будет отмечен для считывания код типа DATA-MATRIX
  • TYPE_CODE_CODE_39 - Будет отмечен для считывания код типа DATA-MATRIX
  • TYPE_CODE_QR_CODE - Будет отмечен для считывания код типа QR_CODE
  • TYPE_CODE_PDF_417 - Будет отмечен для считывания код типа PDF_417
  • TYPE_CODE_MSI - Будет отмечен для считывания код типа MSI
  • TYPE_CODE_UPC_E - Будет отмечен для считывания код типа UPC_E
  • TYPE_CODE_ANY - Будут распознаваться ЛЮБЫЕ, поддерживаемые библиотекой штрих-коды.

Несколько примеров использования:

Например, если Вы-ювелир, купили USB-микроскоп и хотите считывать нано-метки (DataMatrix-коды) с ювелирных изделий в 1С, то ваш сценарий запуска это:

BarCodeWebCamReader.exe ClearBarcodeFieldBeforeReading ExitAndWriteBuffer TYPE_CODE_DATA_MATRIX

Для считывания всех типов кодов запускаем так:

BarCodeWebCamReader.exe ClearBarcodeFieldBeforeReading ExitAndWriteBuffer TYPE_CODE_ANY

Выглядит это  так:

 

 

Или так для управляемых форм:

 

 

Как бороться с предупреждениями о безопасности, все знают. Жмём "ДА".

 

 

Для желающих переписать программу для себя отдельно прилагаю исходники.

Также прилагаю обработку с примером для 1С. Подходит и для обычного, и для управляемого приложения (внутри 2 формы).

Код в 1С можно использовать такой:

КодВозвратаПриложения = Неопределено;
ЗапуститьПриложение("C:\Users\User\Desktop\BarCodeWebCamReader\BarCodeWebCamReader\bin\Debug\BarCodeWebCamReader.exe ClearBarcodeFieldBeforeReading ExitAndWriteBuffer TYPE_CODE_DATA_MATRIX", , Истина, КодВозвратаПриложения);
Если КодВозвратаПриложения = 0 Тогда
	КомОбъект = Новый COMОбъект("htmlfile");
    Сообщить(КомОбъект.ParentWindow.ClipboardData.Getdata("Text"));	
КонецЕсли;

Тестирование производилось на платформе 1С 8.3.24.1368.

Сканирование штриховых кодов Распознавание штрих-кодов веб-камерой BarCodeScanWebCam

См. также

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3000 руб.

03.12.2018    61961    210    103    

179

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Стандартные конфигурации ERP, КА, УТ 11 позволяют работать с штрихкодированием серий. Есть только одно суровое ограничение – на упаковке должна быть этикетка для номенклатуры и отдельно для серии. Во многих случаях это критически неудобно.

12000 руб.

19.04.2021    24285    72    49    

65

SALE! 30%

Сканер штрих-кода Пользователь Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

У вас возникал вопрос - Как быстро и правильно выполнить приемку товара в торговой точке? Как минимизировать ошибки при сборке заказа клиента? Текущая разработка способна помочь в решении данных проблем. Её назначение - проверка с помощью сканера штрих кода поступления и реализации товаров, заказов клиентов, заказов поставщикам, расходных и приходных ордеров, перемещений и возвратов.

2400 руб.

29.07.2020    38414    192    168    

157

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    102039    625    190    

334

Учет ОС и НМА Сканер штрих-кода Терминал сбора данных Логистика, склад и ТМЦ Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Приложение Инвентаризация ОС и ТМЦ предназначено для инвентаризации основных средств и товарно-материальных ценностей, закреплённых за конкретным материально ответственным лицом или складом. В конфигурации 1С:Бухгалтерии 3.0 отсутствуют возможности генерации и работы со штрих-кодами для основных средств. Приложение позволяет генерировать и обрабатывать штрих-коды как для основных средств, так и для товарно-материальных ценностей (материалы, товары). В новом релизе появилась возможность работы с фотографиями объектов учета.

07.07.2023    4027    2    alfanika    0    

6

Распознавание документов и образов Периферийные устройства Программист Автомобили, автосервисы Россия Платные (руб)

Программа считывает кадры с ip-камер (http - запрос к камере), видео, фото (источники кадров (нет ограничения на их количество) настраивается в конфигурационном файле), находит и распознает номера автомашин и сохраняет в базу db, с сохранением фото номера и автомашины, а также времени детекции.

20400 руб.

31.05.2023    5592    4    4    

9

SALE! 30%

Учет документов Распознавание документов и образов Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Одна из наиболее удобных обработок автоматического прикрепления большого количества документов-оригиналов к документам 1С. Для файлов поточного сканирования автоматически определяются начало и конец каждого документа. Поддерживаются штрихкоды, QR-коды, отсканированные PDF документы без штрихкодов, сформированные в ЭДО текстовые PDF документы. Поддерживаются входящие и исходящие документы-оригиналы.

6480 руб.

23.12.2021    13788    20    25    

10
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. e9504100606 94 03.09.24 14:27 Сейчас в теме
Добрый день.
Если на изображении будет несколько штрихкодов и QR-кодов, то утилита как себя поведет? Распознает какой-то один случайный или все попытается распознать или ничего не сделает?

Пока вы работали с утилитой, можете сказать, есть ли возможность загружать в нее картинки со штрихкодами без использования камеры и без открытия форм? Например, все изображения сгружать в одну сетевую папку, а обработка регламентом их прогоняет через эту утилиту и сохраняет результат куда-нибудь (в файл или в регистр не важно).
2. alexkozin 54 05.09.24 20:49 Сейчас в теме
(1) Добрый день.
По первому вопросу. При обнаружении в поле видимости нескольких графических кодов утилита будет пытаться считать их все рандомно. Именно поэтому в функционале предусмотрен выбор типа граф. кода для того чтобы считывать конкретный тип, отфильтровывая лишние.

По второму вопросу. Пока утилита умеет только "смотреть" глазами веб-камеры. Нет возможности напрямую "подтянуть" файл с изображением графического кода.
3. e9504100606 94 05.09.24 20:59 Сейчас в теме
Оставьте свое сообщение