Компания закупила ТСД от компании Urovo (i6200s), но с утилитами Acode Tools данный сканер штрихкодов не работает, поэтому было реализовано android приложение, которое работает как сервис перехвата событий считывания штрихкодов и передачи его в мобильное приложение 1С.
В отличие от того же Acode Tools приложение не умеет, к сожалению, передавать корректно штрихкод в 1С, если в списке баз указано больше одной базы: в этом случае мобильное приложение выдает ошибку.
Обработку событий произвожу следующим образом:
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "1" Тогда
//Параметр уже содержит текстовое представление штрихкода
ОбработатьПолучениеШтрихкода(Параметр);
КонецЕсли;
КонецПроцедуры
Так как у нас в конфигурации мобильного приложения используются утилиты Acode tools, т.е. в процедуре ПриНачалеРаботыСистемы() модуля управляемого приложения вызывается обработчик глобального оповещения:
УтилитыACODEМодульДляОповещений.ПодключитьГлобальноеСобытиеОповещения();
Update 2024.12.07. Добавлена новая apk для работы со сканерами iData (протестировано на iData 95W)
P.S. Данное приложение работает без установки утилит Acode, главное чтобы был подключен обработчик глобального оповещения о событиях.
P.P.S. Может быть, кому-нибудь пригодится.
но с утилитами Acode Tools данный сканер штрихкодов не работает.
не выясняли причину почему не работает? acode штука популярная не видел чтобы кто то написал что у него не работает.
(1) Там свои intent’ы перехватываются, а тут они другие, поэтому пришлось писать дополнительное приложение. Я списывался на форме Acode tools, но результата это не принесло.
В 1с штрихкод передается, вызывая внешнее событие ?
(3) Нет. Обработку событий я обрабатываю так:
P.S. Обновил публикацию.
(4)
Непонятно…
Вот из синтакс-помошника:
ОбработкаОповещения(<ИмяСобытия>, <Параметр>, <Источник>)
Описание:
Возникает при оповещении всех созданных форм методом глобального контекста Оповестить.
Если не секрет, а как Вы вызываете метод Оповестить(), на который реагирует Процедура ОбработкаОповещения ? Через Com ? А разве так можно на мобиле ?
(5) Прошу прощения за не совсем полный ответ. Я вчера был не совсем адекватный.
Все просто: у нас используется утилиты Acode Tools и в модуле управляемого приложения расположен код:
И еще небольшое уточнение: ИмяСобытия = «1»
Спасибо.
Но об этом надо бы в публикации написать, тогда не было бы вопроса.
(7) Вам спасибо за уточнения, публикацию поправил.
Не работает проводной сканер HoneyWell MS5145, брал ACODE отсюдаhttp://infostart.ru/public/310565/ стоит версия 2.08 в списке всего одна база (ACODE тестовая) в их конфигурации добавил только проверку на «ИмяСобытия = «1»». Сервисы ACODE и Ваш запущены. Ничего не происходит. Если считывать в текстовое поле то сканер разумеется считывает как клавиатура — тоесть сканер подключен и работает.
Показать
(9) А мое приложение и не рассчитано на работу с этим сканером, оно предназначено только для ТСД Urovo i6200 и подобные ему.
(10) а вы не могли бы поделиться исходником, чтобы я доработал для своих нужд?
Добрый день, Всеволод!
Мы задумались о приобретении Urovo i6200s.
Данный ТСД выпускается с тремя вариантами считывателя, что можно понять по первым двум буквам в модели:
Mindeo (SL), Honeywell N3134 (SH), Motorola SE955 (SS).
Не могли бы вы уточнить, какая именно модель используется у Вас? Думаю другим таким же «задумавшимся» тоже будет интересно…
В идеале будет если получится сообщить полную модель, например: Urovo MC6200S-SH1S2E000H
А то купим в надежде на ваш сервис, а он «не взлетит»…
(12) Добрый день! Единственное чем могу помочь, это скинуть фото с коробки в которой наша компания его купила. Просто все эти ТСД шли непосредственно из китая. Если будут еще вопросы и я в силах ответить на них, то я отвечу.
(13) Так коробка и ТСД на фото — это i6300, а в статье речь про i6200.
(14) Все просто. На момент написания статьи, мне предоставляли этот же ТСД (кустарного производства), но с маркировкой i6200. Для него я и разрабатывал приложение. После пилотного проекта компания закупила ТСД и их привезли вот с такой маркировкой. Так что прошу прощения, я сам нахожусь в легком диссонансе от этой ситуации.
Прошу уточнить.
Какие настройки необходимо установить в DataWedge для передачи штрихкода и корректного перехвата.
Ошибка при синтаксическом анализе пакета.
Android 4.1.
(16) никакие, мое приложение перехватывает интент и передает его в 1с. Оба файла протестированы на рабочих тсд.
(17) Вы что именно скачивали?
Scaner_barcode.apk
(19) Он предназначен для работы со сканерами UROVO, у Вас какой фирмы ТСД?
Symbol MC32
На Android 4.1
Работа со сканером через DataWedge
(21) Мои текущие публикации, не помогут Вам, Но я могу попробовать помочь Вам.
Было бы очень хорошо.
Добрый день!
А вот это «УтилитыACODEМодульДляОповещений.ПодключитьГлобальноеСобытиеОповещения();» откуда взять? Нужно еще что-то от acode устанавливать?
(24) Добрый день. У нас на предприятии используется утилиты ACODE только для push-уведомлений. По сути можно самому определить этот обработчик глобального оповещения и все.
Добрый день.
В связи с выходом мобильного клиента, задумались о переводе ТСД на мобильный клиент.
Есть возможность доработать Ваше приложение?
Насколько хватает моих дилетантских познаний, нужно передавать ШК не в приложение com.e1c.mobile а в приложение com.e1c.mobile.client. В остальном все должно работать также.
Заранее спасибо за помощь!
(26) доброго времени суток. На Ваш вопрос пока не могу дать ответ. Мне нужно посмотреть более детально.
(27) Тоже интересует этот вопрос
(28) нельзя) пробовал не в моих силах из-за того что закрыли дырку которой я пользовался для написание текущего приложения
Автор, приветствую тебя!
Установил компоненту из твоей публикации на свой ТСД.
Захотел протестировать: создал конфигурацию для мобильного приложения, создал в ней обработку и добавил форму. Потом к этой форме добавил процедуру «Обработка оповещения». Запускаю на своем тсд, нажимаю на кнопку сканирования — а форма на 1С не реагирует никак. Что делаю не так, подскажи!
(30) Приветствую. Ты подключил при старте системы подключение глобального обработчика оповещения? И какая платформа на мобилке?
(31)Привет.
1. Да, в модуле управляемого приложения в ПриНачалеРаботы системы прописал эту процедуру подключения глобального обработчика оповещения, которая ссылается на клиентский модуль.
Также пробовал брать другие уже готовые мобильные типовые решения где тоже это прописано сразу — также не срегариовал на сканер.
2. Платформа стоит 8.3.15, т.е. свежая.
(32) При использовании свежей платформы это не работает, так как с обновлением политики безопасности google был прикрыт механизм глобального оповещения. Следовательно нужно использовать более позднюю платформу
(33) Вот оно что, понятно. Спасибо. Автор, не подскажешь какую версию мобильной платформы ставить?
Версия Андроида получается тоже влияет на это?
(32) для более поздних релизов я пробовал:
https://forum.infostart.ru/forum28/topic186089/