Android cервис для передачи штрихкода в мобильное приложение 1С

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

urovo i6200s android мобильное приложение iData iData W95

9
Приложение android (сервис), реализованное для перехвата события считывания штрихкода и передачи события в мобильное приложение 1С.

Компания закупила ТСД от компании Urovo (i6200s), но с утилитами Acode Tools данный сканер штрихкодов не работает, поэтому было реализовано android приложение, которое работает как сервис перехвата событий считывания штрихкодов и передачи его в мобильное приложение 1С.

В отличие от того же Acode Tools приложение не умеет, к сожалению, передавать корректно штрихкод в 1С, если в списке баз указано больше одной базы: в этом случае мобильное приложение выдает ошибку.

Обработку событий произвожу следующим образом:

Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
    Если ИмяСобытия = "1" Тогда
        //Параметр уже содержит текстовое представление штрихкода
        ОбработатьПолучениеШтрихкода(Параметр);
    КонецЕсли;
КонецПроцедуры

Так как у нас в конфигурации мобильного приложения используются утилиты Acode tools, т.е. в процедуре ПриНачалеРаботыСистемы() модуля управляемого приложения вызывается обработчик глобального оповещения:

УтилитыACODEМодульДляОповещений.ПодключитьГлобальноеСобытиеОповещения();

 

Update 2017.12.07. Добавлена новая apk для работы со сканерами iData (протестировано на iData 95W)

P.S. Данное приложение работает без установки утилит Acode, главное чтобы был подключен обработчик глобального оповещения о событиях.

P.P.S. Может быть, кому-нибудь пригодится.

9

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

Наименование Файл Версия Размер
Scaner_barcode.apk
.apk 1,34Mb
23.01.17
48
.apk 1,34Mb 48 Скачать
Scaner_barcode_iData.apk
.apk 1,33Mb
07.12.17
5
.apk 1,33Mb 5 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. flyer 207 24.01.17 13:58 Сейчас в теме
но с утилитами Acode Tools данный сканер штрихкодов не работает.
не выясняли причину почему не работает? acode штука популярная не видел чтобы кто то написал что у него не работает.
2. Meteorage 11 24.01.17 14:18 Сейчас в теме
(1) Там свои intent'ы перехватываются, а тут они другие, поэтому пришлось писать дополнительное приложение. Я списывался на форме Acode tools, но результата это не принесло.
3. bulpi 131 24.01.17 15:30 Сейчас в теме
В 1с штрихкод передается, вызывая внешнее событие ?
4. Meteorage 11 24.01.17 17:27 Сейчас в теме
(3) Нет. Обработку событий я обрабатываю так:
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	Если ИмяСобытия = "4" ИЛИ ИмяСобытия = "1" Тогда
		//Что-то делаем
	КонецЕсли;
КонецПроцедуры


P.S. Обновил публикацию.
5. bulpi 131 24.01.17 20:44 Сейчас в теме
(4)
Непонятно...
Вот из синтакс-помошника:
ОбработкаОповещения(<ИмяСобытия>, <Параметр>, <Источник>)
Описание:
Возникает при оповещении всех созданных форм методом глобального контекста Оповестить.

Если не секрет, а как Вы вызываете метод Оповестить(), на который реагирует Процедура ОбработкаОповещения ? Через Com ? А разве так можно на мобиле ?
6. Meteorage 11 25.01.17 08:18 Сейчас в теме
(5) Прошу прощения за не совсем полный ответ. Я вчера был не совсем адекватный.
Все просто: у нас используется утилиты Acode Tools и в модуле управляемого приложения расположен код:

УтилитыACODEМодульДляОповещений.ПодключитьГлобальноеСобытиеОповещения();


И еще небольшое уточнение: ИмяСобытия = "1"
7. bulpi 131 25.01.17 12:54 Сейчас в теме
Спасибо.
Но об этом надо бы в публикации написать, тогда не было бы вопроса.
8. Meteorage 11 25.01.17 14:50 Сейчас в теме
(7) Вам спасибо за уточнения, публикацию поправил.
9. nytlenc 265 31.01.17 16:01 Сейчас в теме
Не работает проводной сканер HoneyWell MS5145, брал ACODE отсюда http://infostart.ru/public/310565/ стоит версия 2.08 в списке всего одна база (ACODE тестовая) в их конфигурации добавил только проверку на "ИмяСобытия = "1"". Сервисы ACODE и Ваш запущены. Ничего не происходит. Если считывать в текстовое поле то сканер разумеется считывает как клавиатура - тоесть сканер подключен и работает.

//УтилитыACODEМодульДляОповещений - тут идет подключение глобального оповещения.
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	Сообщить(ИмяСобытия + " " + Параметр + " " + Источник);
	Если ИмяСобытия = "4" ИЛИ ИмяСобытия = "1" Тогда //если это событие блютуз сканера, то записываем штрихкод.
		ПолучениеСообщения(Параметр)
	КонецЕсли;		
КонецПроцедуры
Показать
10. Meteorage 11 31.01.17 19:24 Сейчас в теме
(9) А мое приложение и не рассчитано на работу с этим сканером, оно предназначено только для ТСД Urovo i6200 и подобные ему.
11. nytlenc 265 01.02.17 05:52 Сейчас в теме
(10) а вы не могли бы поделиться исходником, чтобы я доработал для своих нужд?
12. AlexF1983 13.10.17 12:28 Сейчас в теме
Добрый день, Всеволод!
Мы задумались о приобретении Urovo i6200s.
Данный ТСД выпускается с тремя вариантами считывателя, что можно понять по первым двум буквам в модели:
Mindeo (SL), Honeywell N3134 (SH), Motorola SE955 (SS).
Не могли бы вы уточнить, какая именно модель используется у Вас? Думаю другим таким же "задумавшимся" тоже будет интересно...
В идеале будет если получится сообщить полную модель, например: Urovo MC6200S-SH1S2E000H
А то купим в надежде на ваш сервис, а он "не взлетит"...
13. Meteorage 11 13.10.17 13:12 Сейчас в теме
(12) Добрый день! Единственное чем могу помочь, это скинуть фото с коробки в которой наша компания его купила. Просто все эти ТСД шли непосредственно из китая. Если будут еще вопросы и я в силах ответить на них, то я отвечу.
Прикрепленные файлы:
14. AlexF1983 13.10.17 13:26 Сейчас в теме
(13) Так коробка и ТСД на фото - это i6300, а в статье речь про i6200.
15. Meteorage 11 13.10.17 13:52 Сейчас в теме
(14) Все просто. На момент написания статьи, мне предоставляли этот же ТСД (кустарного производства), но с маркировкой i6200. Для него я и разрабатывал приложение. После пилотного проекта компания закупила ТСД и их привезли вот с такой маркировкой. Так что прошу прощения, я сам нахожусь в легком диссонансе от этой ситуации.
16. Grivba 08.01.18 12:18 Сейчас в теме
Прошу уточнить.
Какие настройки необходимо установить в DataWedge для передачи штрихкода и корректного перехвата.
18. Meteorage 11 08.01.18 13:28 Сейчас в теме
(16) никакие, мое приложение перехватывает интент и передает его в 1с. Оба файла протестированы на рабочих тсд.
(17) Вы что именно скачивали?
17. Grivba 08.01.18 12:21 Сейчас в теме
Ошибка при синтаксическом анализе пакета.
Android 4.1.
19. Grivba 08.01.18 17:30 Сейчас в теме
20. Meteorage 11 08.01.18 17:55 Сейчас в теме
(19) Он предназначен для работы со сканерами UROVO, у Вас какой фирмы ТСД?
21. Grivba 08.01.18 18:01 Сейчас в теме
Symbol MC32
На Android 4.1

Работа со сканером через DataWedge
22. Meteorage 11 08.01.18 18:09 Сейчас в теме
(21) Мои текущие публикации, не помогут Вам, Но я могу попробовать помочь Вам.
23. Grivba 08.01.18 22:07 Сейчас в теме
24. ritd 09.07.18 12:39 Сейчас в теме
Добрый день!
А вот это "УтилитыACODEМодульДляОповещений.ПодключитьГлобальноеСобытиеОповещения();" откуда взять? Нужно еще что-то от acode устанавливать?
25. Meteorage 11 09.07.18 12:57 Сейчас в теме
(24) Добрый день. У нас на предприятии используется утилиты ACODE только для push-уведомлений. По сути можно самому определить этот обработчик глобального оповещения и все.
26. AlexF1983 15.08.18 15:04 Сейчас в теме
Добрый день.
В связи с выходом мобильного клиента, задумались о переводе ТСД на мобильный клиент.
Есть возможность доработать Ваше приложение?
Насколько хватает моих дилетантских познаний, нужно передавать ШК не в приложение com.e1c.mobile а в приложение com.e1c.mobile.client. В остальном все должно работать также.

Заранее спасибо за помощь!
27. Meteorage 11 15.08.18 15:36 Сейчас в теме
(26) доброго времени суток. На Ваш вопрос пока не могу дать ответ. Мне нужно посмотреть более детально.
Оставьте свое сообщение