Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Мобильный клиент, подключение сканера ШК

Мобильный клиент, подключение сканера ШК
Я
   Alex2411
 
30.09.20 - 17:42
Добрый день, подскажите возможно ли такое и каким образом подключить к мобильному клиенту драйвер сканера ШК. (прошу не путать мобильный клиент и мобильное приложение)
   fisher
 
1 - 30.09.20 - 17:51
> прошу не путать мобильный клиент и мобильное приложение
В части подключения драйвера сканера ШК принципиальной разницы нет вроде...
Бери мобильную библиотеку подключаемого оборудования и вперед за орденами.
   fisher
 
2 - 30.09.20 - 17:53
У тебя андроидный терминал со встроенным сканером ШК? Какая модель?
   Alex2411
 
3 - 30.09.20 - 17:58
M3 SL15 помоему
   Alex2411
 
4 - 30.09.20 - 17:59
(1) Мы нарисовали форму для мобильного клиента для основной конфигурации, "Бери мобильную библиотеку подключаемого оборудования" - ее нужно будет интегрировать в основную конфигурацию
   fisher
 
5 - 30.09.20 - 18:03
(4) Подходящие драйвера оттуда бери. Если подходящего там нет, то я находил на инфостарте дрова для 1С, позволяющие перехватывать широковещательные сообщения Android во внешнее событие. А в ТСД с ШК обычно есть опция настроить отправку штрихкода через широковещательное событие. Я так Zebra подключал. Да и по отзывам народ много чего так подключал.
   Сияющий в темноте
 
6 - 30.09.20 - 19:28
ну или из клиента можно запустить программу на android,которая прочитает штрихкод и вернет его 1с
   Alex2411
 
7 - 01.10.20 - 06:57
(6) Что за программа? или речь идет о считывание ШК камерой?
   Alex2411
 
8 - 05.10.20 - 08:29
Доброе утро!!!
- Установил мобильную библиотеку подключаемого оборудования на комп
- Опубликовал 
- Подключился с ТСД через мобильный клиент

Устанавливаю драйвер 1С:Сканер штрихкода (NativeApi), установка проходит, пытаюсь зайти в настройку - пишет "Не удалось загрузить драйвер устройства"

Что я делаю не так? это же специальная конфигурация для Андройда
   Alex2411
 
9 - 05.10.20 - 09:00
Поделитесь опытом
   yzimin
 
10 - 05.10.20 - 09:16
IIS или апачи?
   Alex2411
 
11 - 05.10.20 - 10:14
апач, это имеет значение?
   yzimin
 
12 - 05.10.20 - 12:10
(11) Убедитесь, что в настройках апача добавлены типы MIME
   Alex2411
 
13 - 05.10.20 - 18:00
(12) Может тогда лучше IIS ставить?
   Little Friend
 
14 - 05.10.20 - 18:43
(0) Буквально пару дней назад сделал такой драйвер. Ещё описание не подготовил, поэтому, пока ни куда не выкладывал.
Драйвер на github: https://github.com/ltfriend/AndroidScannerDriverFor1C
Ссылка на релиз: https://github.com/ltfriend/AndroidScannerDriverFor1C/releases/tag/v1.0.1.2
Проверялось на мобильном клиенте с УТ. Подойдёт для любой конфигурации с библиотекой подключаемого оборудования (обычной, НЕ мобильной). Т.е. добавляете драйвер, устанавливаете его в мобильном клиенте и можете сканировать в документах (заказах, реализациях и т.п.).
Единственное, с чем столкнулся, не работает, если в справочнике "Драйверы оборудования" создать новый элемент и загрузить драйвер из файла, поэтому придётся встроить его в состав конфигурации.
Для этого:
1. Создать общий макет "ДрайверСканерыШтрихкодаAndroid" с типом "Двоичные данные" и загрузить архив с драйвером.
2. В справочник "ДрайверыОборудования" добавить новый предопределенный элемент с именем "ДрайверСканерыШтрихкодаAndroid" и наименованием "Сканеры штрихкода Android".
3. Добавить в перечисление "ОбработчикиДрайверовПодключаемогоОборудования" новое значение "ОбработчикСканерыШтрихкодаAndroid", синоним "Сканеры штрихкода Android", комментарий (ВАЖНО!) "СканерШтрихкода".
4. Создать обработку в которой в серверной функции выполнить код:
    Справочники.ДрайверыОборудования.ЗаполнитьПредопределенныйЭлемент(
        Перечисления.ОбработчикиДрайверовПодключаемогоОборудования.ОбработчикСканерыШтрихкодаAndroid,
        "AddIn.com_ptolkachev_AndroidScannerExtension",
        "ДрайверСканерыШтрихкодаAndroid",
        Ложь,
        "1.0.1.1",
        Ложь);
5. После обновления ИБ в режиме 1С:Предприятие выполнить обработку из пункта 4.

После этого в состав конфигурации будет добавлен новый драйвер.

В мобильном клиенте перейдите к настройке оборудования (обычно, например в УТ, это НСИ и администрирование > Администрирование / РМК и оборудование > Оборудование / Подключаемое оборудование. Добавить новое оборудование и выбрать драйвер из списка "Сканеры штрихкода Android".
После сохранения перейти в настройки и указать параметры Broadcast сообщения "Action Name" и "Extra Data" (обычно, их значения можно узнать в настройках сканера на устройстве). После чего можно
сканировать встроенным в ТСД сканером в мобильном клиенте 1С.

Подробное описание с примерами и картинками будет выложено в ближайшие дни на infostart.
   Alex2411
 
15 - 05.10.20 - 18:58
(14) Отлично!! Может есть более подробная инструкция?
   Little Friend
 
16 - 05.10.20 - 19:07
(15) см. выше
     > Подробное описание с примерами и картинками будет выложено в ближайшие дни на infostart.

(только сделал драйвер, прошёл уже испытание в поле, описание ещё не успел подготовить, просто поделился с другом, он показал мне этот пост, вот вам выкладываю раньше, но без нормально описания, но там сложного ни чего нет).
   Alex2411
 
17 - 05.10.20 - 19:17
(16) Спасибо, завтра буду разбираться
   fisher
 
18 - 06.10.20 - 09:33
(14) Молодец! Я успешно юзал аналогичную компоненту: http://catalog.mista.ru/public/779912/
Но альтернативы - это всегда хорошо. А то мало ли... Выходят новые релизы, авторы забивают на поддержку и т.п.
   yzimin
 
19 - 06.10.20 - 10:40
У вендоров оборудования разве нет таких компонент готовых?
К примеру в мобильном клиенте для УТ11 довольно успешно юзал компоненту от rightscan на ТСД UROVO, дают бесплатно. Как раз для работы сканера, NFC, механических кнопок, звуковых сигналов
   fisher
 
20 - 06.10.20 - 11:59
(19) Если вендор не отечественный, то глупо от него ожидать одинэсных компонент из коробки.
   Alex2411
 
21 - 07.10.20 - 08:23
(14) Сделал все как написано, одна загвоздка, при переходе в настройки устройства на ТСД отображается табличка что драйвер не установлен, жму установить "Драйвер установлен", а красным так и горит что драйвер не установлен
   Little Friend
 
22 - 07.10.20 - 09:20
(21) Вы драйвер как на картинке выбирали? https://ibb.co/3Ft3W3Q
После сохранения при переходе к настройкам должна открыться форма для указания параметров, как на рисунке https://ibb.co/YXr13wB
   Alex2411
 
23 - 07.10.20 - 14:08
(22) Да все по инструкции, результат на фото:
https://ibb.co/pfstL2f
https://ibb.co/L1mnZ7G

В чем еще может быть дело?
   Little Friend
 
24 - 07.10.20 - 14:13
(23) Вы драйвер добавили в конфигурацию или в режиме "Предприятие" загрузили из файла?
   Alex2411
 
25 - 07.10.20 - 14:48
(24) Драйвер был добавлен в конфигурацию, двоичные данные, архив "AndroidScanerDriverFor1C_1.0.1.2.zip" полученные по ссылке, верно?
   Little Friend
 
26 - 07.10.20 - 15:53
(25) напишите модель устройства
   Little Friend
 
27 - 07.10.20 - 15:53
(25) И версии платформ: обычной и мобильной.
   Alex2411
 
28 - 07.10.20 - 16:10
(27) Устройство: M3Mobile SL10-W
Версия платформы обычной: 8.3.16.1148
Версия платформы мобильной: 8.3.16.142
   Little Friend
 
29 - 07.10.20 - 16:46
(28) Забыл попросить, чтобы вы написали ещё какая у вас конфигурация и её версия.
   Little Friend
 
30 - 07.10.20 - 16:48
(28) Не могу найти информацию об архитектуре процессора вашего ТСД. arm или arm64?
 
 Рекламное место пустует
   Alex2411
 
31 - 07.10.20 - 16:55
(29) Конфигурация УТ 11 (11.4.6.230)
О процессоре: https://ibb.co/pzDb5qM
   Little Friend
 
32 - 07.10.20 - 17:05
(31) Да, arm64. На таком процессоре не тестировалось, хотя, тоже должно работать. Тестировалось на arm и х86. Сейчас проверю у себя, возможно в этом дело.
   Little Friend
 
33 - 07.10.20 - 17:11
(31) Действительно, на arm64 не устанавливается драйвер. Завтра постараюсь разобраться с проблемой.
   Little Friend
 
34 - 07.10.20 - 18:16
(31) Замените драйвер, которые вы встроили в конфигурацию драйвером по ссылке. Должно заработать. https://yadi.sk/d/wIhAygBwMnsC4A
   fantomrik
 
35 - 07.10.20 - 21:06
Коллеги, у меня в мобильной платформе при попытке записать оборудование, пишет что не заполнено рабочее место. Но такого поля нет, хотя в веб интерфейсе есть. Унф 1.6.
Не сталкивался с такой проблемой ни кто?
   fantomrik
 
36 - 07.10.20 - 23:40
(14) Подскажите пожалуйста, должно ли работать с АТОЛ Smart.lite?
Сделал по инструкции для УНФ 1.6, на ТСД создаю оборудование - сканер штрихкода/драйвер андройд.
Оборудование создалось, захожу в него - "Настроить", горит надпись "ДЛрайвер устройства на текущем рабочем месте не установлен". Жму установить, появляется ошибка "Установка внешней компаненты не выполнена! В процессе установки произошла ошибка! Возможно отсутствует компонента для используемого клиентского приложения". По нажатию "ок" сообщение "установка драйвера завершена"
   fantomrik
 
37 - 07.10.20 - 23:57
(36) Если это важно, Android 7, процессор mt6580, мобильная платформа 8.3.17.67
   Little Friend
 
38 - 08.10.20 - 09:10
(36) Странно, должно работать. Тестировалось в том числе и на АТОЛ Smart.Lite в УТ и самописной конфе с внедрённой библиотекой подключаемого оборудования. Пользователи работают, проблем нет. Попробую разобраться, почему у вас могло не заработать.
   Alex2411
 
39 - 08.10.20 - 10:03
(34) Попробовал новый драйвер (1.0.1.3).
До это писал просто "Установка драйвера завершена" и больше ничего не происходило хотя то что драйвер не установлен оставалось гореть красным, теперь добавилась ошибка:
https://ibb.co/GWxtLYX
Жму "Все сообщения":
https://ibb.co/G2N23QG
Жму на ошибку:
https://ibb.co/b1qZ0My
---------------------------
Это выдает если зайти куда либо в таком состоянии без установленного драйвера, т.е. после всех сообщений выше:
https://ibb.co/Yb4HZZL
   Little Friend
 
40 - 08.10.20 - 11:16
(39) Посмотрел вашу версию УТ. У вас старая версия как самой УТ, так, соответственно, и версия используемой библиотеки подключаемого оборудования, поддерживающей стандарт 2.2. Драйвер разрабатывался под актуальный стандарт 3.3 (версии библиотек подключаемого оборудования начиная с 2.1.4). Поэтому этот драйвер вам не подходит. Вам нужно, либо обновить версию (необязательно обновлять всю конфигурацию, достаточно обновить библиотеку подключаемого оборудования), либо, используя исходники драйвера на github (ссылка была дана выше) самостоятельно (или найти, кто это сможет сделать) адаптировать её под стандарт 2.2.
   Little Friend
 
41 - 08.10.20 - 11:30
(36) Проверить на УНФ. Работает. Уточните версию обычной платформы 1С. Попробуйте добавить общий макет не как тип "Двоичные данные", как тип "Внешняя компонента" (хотя, у меня оба варианта работают, но может на вашей версии платформы нужен именно тип "Внешняя компонента").
   Little Friend
 
42 - 08.10.20 - 11:30
(41) ПровериТЬ = проверИЛ (опечатка)
   fantomrik
 
43 - 08.10.20 - 12:58
(41) Сейчас версия обычной платформы 8.3.15.1830, но для теста ставил и 8.3.17.1549, результаты были такие же. Так же пробовал драйвера и ARM и ARM64, и подгружал, как вы советовали, как "Внешняя компонента". Не знаю почему не хочет устанавливаться..
http://s01.geekpic.net/di-I1LNH6.png
http://s01.geekpic.net/di-WRL144.png
http://s01.geekpic.net/di-P68NMI.png
http://s01.geekpic.net/di-LWM1H5.png
http://s01.geekpic.net/di-67CFEV.png
http://s01.geekpic.net/di-TC66UR.png

Перевел сканер в в настройках в KEYBORD_EVENT и стал работать сканер  драйвером Native Api. Возможно этого и будет достаточно, посмотрю как типовая УНФ обабатывает сканирование и сделаю аналогично в своих доработках.
   Little Friend
 
44 - 08.10.20 - 13:22
(43) А у меня наоборот, стандартный не работает. Ни через KEYBOARD, ни как, поэтому пришлось писать самому.
   fantomrik
 
45 - 08.10.20 - 17:36
(44) А с вашим драйвером сканер как клавиатура работает или через com? С Native Api как клавиатура, не получится похоже отлавливать событие сканирования и самостоятельно обрабатывать в зависимости от условий...
   Little Friend
 
46 - 08.10.20 - 17:52
(45) В Android сканер посылает Broadcast сообщение, а приложения в Android обрабатывают это сообщение. Драйвер получает эти сообщения и отправляет в 1С как внешнее событие в формате, соответствующим требованиям 1С по драйверам подключаемого оборудования.
Я подготовил полный комплект с драйвером, конфигурацией, примерами и инструкциями: https://yadi.sk/d/S-Y5SEzQxyOPtg
Проверьте ещё раз, всё ли правильно вы сделали, может что-то упустили. Потому что я пробовал на двух разных ТСД, пользователи работают как раз со Smart.Lite. Ошибок нет. На телефоне тоже нормально устанавливается драйвер (только, естественно, сканировать не может).
   Сияющий в темноте
 
47 - 08.10.20 - 17:53
не все терминалы работают через broadcast,к сожалению.
изобретательность создателей терминало не имеет границ,в частности udp-пакет с данными сеанирования имеет место быть.
   Little Friend
 
48 - 08.10.20 - 17:57
(47) тут проблема в том, что у fantomirk драйвер вообще не устанавливается. Он должен установиться в любом случае, если нет broadcast, то просто штрихкоды получать не будет, но установится без ошибок.
   fantomrik
 
49 - 08.10.20 - 21:40
(48) Огромное спасибо, теперь драйвер устанавливается, видимо сам что то не так делал изначально.
Теперь разбираюсь как отлавливать события сканера в форме документа.
   fantomrik
 
50 - 08.10.20 - 22:29
(48) для получения данных нужно на форме подключить процедуру ВнешнееСобытие и в ней ловить Событие = то что настройках сканера вписано в Action Name и парить данные? Отладки не получится запустить для мобильного клиента с ТСД?
   Little Friend
 
51 - 09.10.20 - 10:26
(50) насколько я понял, у вы работаете через мобильный клиент? Тогда ни чего дополнительно делать не нужно. Должен работать типовой механизм сканирования.
Если штрихкод не обрабатывается, то, вероятнее всего, вы неверно установили в настройках параметры "Action Name" и "Extra Data".
Для АТОЛ Smart.Lite у меня следующие параметры
Action Name: com.xcheng.scanner.action.BARCODE_DECODING_BROADCAST
Extra Data: EXTRA_BARCODE_DECODING_DATA
Нашёл эти параметры в приложении настройки сканера, установленном на ТСД.
   Little Friend
 
52 - 09.10.20 - 10:30
(50) т.е. просто подключаете драйвер и начинаете сканировать, как на компьютере обычным сканером. кода не нужно. Единственное, что нужно было сделать - добавить драйвер в состав конфигурации. Если в справочнике драйверов создать новый элемент и загрузить из файла, то в мобильном клиенте такой драйвер не устанавливается, поэтому приходится дорабатывать конфу - добавлять в неё драйвер. В остальном всё как обычно. Никакого кода писать не нужно. Если бы загруженный из файла драйвер в мобильном клиенте работал так же, как в обычном, то вообще достаточно было бы просто в режиме предприятия загрузить драйвер из файла и начать сканировать.
   fantomrik
 
53 - 09.10.20 - 11:13
(52) параметры
Action Name: com.xcheng.scanner.action.BARCODE_DECODING_BROADCAST
Extra Data: EXTRA_BARCODE_DECODING_DATA в приложении сканера, верно. Их нужно вписать в настройки драйвера в 1с?там есть пустые эти поля..
Да у меня мобильный клиент, и мне нужна не типовая обработка при событии сканирования. Поэтому хочу отлавливать сканирование через внешнее событие и хотел уточнить, какое имя у него?
Типовой функционал, как клавиатуры работает нормально, но мне нужно его переделать...
   Little Friend
 
54 - 09.10.20 - 11:31
(53) значения action name и extra data необходимо указать в настройках драйвера 1С.
Типовая обработка штрихкода происходит в обработчике события формы "ОбработкаОповещения".
В коде (пример из документа реализации, но он однотипен во всех документах)
    // ПодключаемоеОборудование

    Если Источник = "ПодключаемоеОборудование" И ВводДоступен() Тогда
        Если ИмяСобытия = "ScanData" И МенеджерОборудованияУТКлиент.ЕстьНеобработанноеСобытие() Тогда
            ОбработатьШтрихкоды(МенеджерОборудованияУТКлиент.ПреобразоватьДанныеСоСканераВМассив(Параметр));
        КонецЕсли;
    КонецЕсли;
    // Конец ПодключаемоеОборудование

Т.е. просто сделайте свою обработку в процедуре "ОбработатьШтрихкоды".
   Little Friend
 
55 - 09.10.20 - 11:33
(53) если типовой функционал "как клавиатура" работает у вас нормально, то можно было и не использовать этот драйвер, а просто сделать как я написал выше. Или я не так понял?
   fantomrik
 
56 - 09.10.20 - 12:49
(55) когда работает как клавиатура, внешнего события не происходит, в этом и проблема, просто как будто нажали быстро на клавиатуре все символы шк, и его не отловить. Поэтому и уточнил, будет ли работать через драйвер как внешнее событие.
Извиняюсь, если не понятно объясняю
   Little Friend
 
57 - 09.10.20 - 14:04
(56) ловите там, где я описал выше (в обработчике "ОбработкаОповещения"). Внешнее событие возникает, но типовые конфигурации внешние события от сканера перехватывают в обработчике "ОбработкаВнешнегоСобытия" модуля приложения и вызывают оповещение, вот его и ловите.
   fantomrik
 
58 - 10.10.20 - 12:52
(57) с вашим драйвером, если сканер в режиме BROADCAST_EVENT поймал событие в обработчике "ОбработкаОповещения". Если сканер в режиме KEYBOARD_EVENT, ни с вашим драйвером, ни с типовым NATIVE API событие не поймать, нажатие клавиатуры не обрабатывается обработчиком. То есть с типовым драйвером NATIVE API можно использовать сканер, только если активизировать на форме нужное поле, что не удобно.
Еще раз спасибо за драйвер!
   Сияющий в темноте
 
59 - 11.10.20 - 00:59
С клавиатурой сложность в том,что в андройде нет возможности повесить перехватчик на события клавиатуры в общем случае,эти события нужно ловить по месту их появления.
ну и поскольку 1с не совсем честно написана на андройде,то илм запускать отдельное приложение,где полностью перехватывать клавиатуру,или ловить в поле ввода в 1с
и,к сожалению,bluetooth сканеры только как клавиатура и подключаются.
   Alex2411
 
60 - 14.10.20 - 15:53
(40) Обновил версию БПО до 2.1.5.3
При попытке настроить пишет: http://s01.geekpic.net/di-7RU1IJ.jpeg
 
 Рекламное место пустует
   Alex2411
 
61 - 20.10.20 - 08:04
+


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.