Подключение мобильного приложения 1с сканировать штрих кода
> прошу не путать мобильный клиент и мобильное приложение
В части подключения драйвера сканера ШК принципиальной разницы нет вроде.
Бери мобильную библиотеку подключаемого оборудования и вперед за орденами.
(1) Мы нарисовали форму для мобильного клиента для основной конфигурации, "Бери мобильную библиотеку подключаемого оборудования" - ее нужно будет интегрировать в основную конфигурацию
(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",
5. После обновления ИБ в режиме 1С:Предприятие выполнить обработку из пункта 4.
После этого в состав конфигурации будет добавлен новый драйвер.
Подробное описание с примерами и картинками будет выложено в ближайшие дни на infostart.
> Подробное описание с примерами и картинками будет выложено в ближайшие дни на infostart.
(только сделал драйвер, прошёл уже испытание в поле, описание ещё не успел подготовить, просто поделился с другом, он показал мне этот пост, вот вам выкладываю раньше, но без нормально описания, но там сложного ни чего нет).
У вендоров оборудования разве нет таких компонент готовых?
К примеру в мобильном клиенте для УТ11 довольно успешно юзал компоненту от rightscan на ТСД UROVO, дают бесплатно. Как раз для работы сканера, NFC, механических кнопок, звуковых сигналов
(14) Сделал все как написано, одна загвоздка, при переходе в настройки устройства на ТСД отображается табличка что драйвер не установлен, жму установить "Драйвер установлен", а красным так и горит что драйвер не установлен
В чем еще может быть дело?
(24) Драйвер был добавлен в конфигурацию, двоичные данные, архив "AndroidScanerDriverFor1C_1.0.1.2.zip" полученные по ссылке, верно?
Анализ вариантов показывает три возможных решения:
- Использование существующего мобильного приложения
- Создание собственного мобильного приложения на 1С
- Совмещенный вариант
Рассмотрим каждый подробнее.
1. Использование существующего мобильного приложения.
Анализ рынка в магазинах приложений показывает, что большинство существующих сканеров распознают QR-коды плохо, и лишь отдельные делают это на удивление моментально. А умеют отправлять данные на сервер - единицы. Рассмотрим реализацию на примере одного такого приложения: "Штрихкод Коммандер"
Подготовка серверной части
Проверяем, что брандмауэр и/или антивирус не мешают подключению к сервису.
Подготовка клиентской части
Устанавливаем приложение на мобильное устройство:
Переходим в настройки и включаем переключатель: "Веб-сервер". Указываем свой сервер в поле "Адрес URL" (в примере выше это был: "http://192.168.0.1/MyWS/hs/barcode/"). При необходимости вводим логин и пароль от базы 1С. При желании корректируем остальные настройки.
Вы, наверное, удивитесь, но на этом все! Сканируем и радуемся!
2. Создание собственного мобильного приложения на 1С
Подготовка серверной части
На сервере в 1С создаем метод web-сервиса и описываем алгоритм обработки полученного QR-кода. Пример:
Подготовка клиентской части
У 1С есть встроенные методы по сканированию штрихкодов, что значительно облегчает разработку. Пример:
Преимуществом данного варианта является гибкость и возможность реализации дополнительных требований к мобильному приложению. Но, к сожалению, качество сканирования при этом страдает. По сравнению с аналогами в магазинах приложений, сканер от 1С сканирует значительно хуже, медленнее, а иногда вообще не распознает QR-код. Также страдает и итоговый объем приложения, так как вместе с ним на мобильное устройство устанавливается и платформа 1С, которая занимает в несколько раз больше места.
Сравнение мобильных технологий сканирования штрихкодов приведены в следующей статье .
3. Совмещенный вариант
Данный вариант является попыткой использовать преимущества предыдущих двух вариантов: гибкости собственного мобильного приложения и хорошего сканера из магазина приложений. Реализация заключается в создании мобильного приложения на 1С, которое реализует весь необходимый функционал, в том числе и отправку данных на сервер, а сканирование QR-кода поручает выполнить другому приложению, предварительно установленному на устройстве.
Рассмотрим реализацию на примере того же приложения:
Отправка данных на сервер рассмотрена достаточно подробно, поэтому остановимся лишь на моменте взаимодействия с другим мобильным приложением. Пример:
К недостаткам данного варианта можно отнести необходимость установки двух мобильных приложений и относительно большое занимаемое место на мобильном устройстве.
Надеюсь, что изложенный материал ответит на некоторые ваши вопросы и поможет в автоматизации сканирования штрихкодов.
Нужно было сделать одну обработку с использованием сканера ШК, а покупать сканер уж очень не хочется ради того, что бы отлаживать ее работу. За пару часов нашел один интересный способ использования телефона в качестве сканера ШК.
Нам понадобится:
1.Телефон на android выше 4.0 с камерой. (качество камеры не важно, но от этого зависит как долго вы будете ловить штрихкод)
2. ПК с ОС Windows c Bluetooth или WiFi-сетью
3.Приложения Barcode Scanner и GetBlue Bluetooth Reader, Demo (легко ищутся на Play Market)
4. Программа Twedge (
Запустим GetBlue и настроим. В приложение есть два прямоугольника: Data Sourse(1) - Источник, и Data Sink (2) - Приемник.
Нажимаем на первый прямоугольник и выбираем камера-сканер, а затем Сканер штрих-кодов.
Теперь нам нужно выбрать приемник информации, у нас есть два основных варианта - это Bluetooth и TCP. Расскажу про два способа.
Подключение по Bluetooth.
Сопряжаем телефон и компьютер по Bluetooth. После этого телефон должен появится на ПК в "Устройства и принтеры".
В приложении нажимаем на второй прямоугольник (Data Sink), выбираем Bluetooth, в настройка подключения выбираем режим - клиент, и выбираем наш ПК из найденных Bluetooth устройств. Нажимаем Ok.
Устанавливаем TWedge на ПК. (все стандартно, это программа платная, я выбрал пробную версию, этого достаточно)
Запускаем и вверхнем меню нажимаем Device list - Add device. На закладке Interface выбираем bluetooth сервер и нажимаем Ок.
В левом списке появилось наше устройство, Если нажать по нему правой кнопкой - выбрать Configure - Action, можно настроить переадресацию данных на виртуальный COM-порт, но сейчас я оставлю все как есть, стандартно данные принимаются как клавиатура (как на обычных сканерах ШК подключенных к USB).
Подключение по TCP
Устанавливаем программу TWedge на ПК.
Запускаем и вверхнем меню нажимаем Device list - Add device. На закладке Interface выбираем TCP сервер , можно указать любой свободный порт, я использую 81. Нажимаем Ок.
В приложении нажимаем на второй прямоугольник (Data Sink), выбираем TCP, в настройка подключения выбираем режим - клиент, указываем хост (локальный IP нашего ПК), и указанный нами порт (в моем случае 81). Нажимаем Ok.
Нам остается только проверить принимаются ли данные. Нажимаем в программе зеленую кнопку с треугольником, (play, start). а на телефоне в приложении нажимаем в правом верхнем углу кнопку меню (с тремя точка и выбираем start). Должен запуститься сканер и сканируем штрихкод. В программе после считывании ШК должна появиться строчка вида:
Data:4606272002283 (наш штрихкод)
Подключаем все это дело к 1С.
Открываем конфигурацию, в моем примере это УТ 11.2. (подходит для всех решений 1С на управляемых формах)
Идем на закладку "Администрирование" или "НСИ и администрирование". Ищем пункт "РМК и оборудование". Если не стоит галочка "Использовать подключаемое оборудование" ставим ее и нажимаем "Подключаемое оборудование".
В открывшейся форме слева в списке выбираем Сканер штрихкода и нажимаем "Создать". Указываем драйвер оборудования 1С: Сканеры штрихкода (COM) и нажимаем "Записать и закрыть".
У нас в списке оборудования появился сканер, выделяем и нажимаем "Настроить".
Сверху нажимаем "Функции" - "Установить драйвер". После установки в настройках выбираем порт и нажимаем записать.
На этом настройка закончена, можно проверить работу в справочнике номенклатура или в документах.
Предлагаю Вашему вниманию сервис для работы с bluetooth сканером штрихкода, который выполняет передачу данных в мобильное приложение 1С посредством фонового уведомления. Данный подход упрощает работу пользователю с оборудованием.
Предыстория
На данный момент в предприятиях занимающихся торговлей очень часто используются сканеры штрихкодов (как проводные, так и безпроводные) и терминалы сборы данных (ТСД). Разница между ними - цена! Одно устройство ТСД может стоить нескольких (а то и больше) обычных сканеров. Каждое предприятие старается сократить затраты, очевидно выбор падет на обычный сканер. И вот тут на помощь приходит мобильная платформа 1С, которая может работать с подключаемыми устройствами к мобильному устройству. Но, не все так просто.
Как работает сканер штрихкодов?
На данный момент, обычный (современный) сканер имеет два режима работы: режим разрыва клавиатуры и режим эмуляции com-порта (другое название SPP Mode).
В режиме разрыва клавиатуры сканер - это клавиатура. В таком случае необходимо чтобы:
- Экран был включен
- Курсор стоял в поле ввода
- Необходимо разрабатывать особый алгоритм отработки данных
- Необходимо чтобы было запущено приложение (в наш случае 1С) для получения и обработки данных со сканера.
Очевидно, режим SPP это то что нам нужно.
Как подключить беспроводной сканер к мобильному устройству в режиме SPP Mode?
На инфостарте есть несколько публикаций, которые выполняют похожую функцию, но к сожалению только для ТСД. Им огромное спасибо за идею.
Сервис для работы с беспроводным сканером в режиме SPP Mode
Проштудировав множество сайтов по Java, наткнувшись на множество недоработок в мобильной платформе 1С, в конечном итоге написал приложение (правда без графического интерфейса), которое реализует требуемую функцию.
Немного о сервисе:
- Сервис предоставляет функцию получению УИД устройства (только спаренного, то есть подключенного). Полученный УИД можно будет сохранить где-нибудь в константе и далее использовать его для подключения
- Сервис предоставляет функцию подключения к сканеру (с помощью ранее полученного УИДа) и обеспечивает фоновую работу с устройством.
- Сервис выполняет фоновую отправку уведомления в мобильное приложение 1С.
- Сервис работает со всеми сканерами которые имеют функцию SPP Mode
Как это выглядит в 1С ---->>>>
Вот основное действие для запуска сервиса
Вот процедура для обработки уведомлений из сервиса (все возвращаемые значения имеют тип "Строка")
Баги, фичи и прочие факи
При разработке приложения на Java проблем не было. Они начались при попытки "подружить" сервис и мобильного приложения 1С.
Итак, имеем следующие баги (или если хотите недоработки) в мобильной платформе 1С:
- Самая важная проблема - мобильное приложение не может принимать внешние оповещения. Вернее в каких то версиях могло принимать, а в каких то нет. В комментариях к этой (Публикация) публикации это упоминалось. Чиниться это просто:
в файле платформы permissions.xml по адресу Android\prjandroid-arm\bin (точно также как описано в публикации) добавляем android:exported="true" и добавляем фильтр на получаемые уведомления
в итоге должны получить следующее:
Представляем 1С:Сканер Документов: мобильное приложение для сервиса 1С:Распознавание Документов.
Теперь бумажные документы можно вводить без доступа не только к сканеру, но даже к базе. Достаточно просто сфотографировать их новым мобильным приложением!
Для кого
Кому выгодно пользоваться мобильным приложением 1С:Сканер Документов:
- Бухгалтеру: для быстрого ввода документов без использования сканера;
- Предпринимателю: для передачи документов в бухгалтерию без личного контакта и пересылки по почте;
- Кладовщику: для ввода поступлений в базу в режиме реального времени;
- Водителю: для съемки документов без доступа к базе.
Как воспользоваться
Чтобы воспользоваться мобильным приложением:
Выберите приложение Бухгалтерия предприятия.
В главном меню выберите пункт Распознавание документов.
Укажите имя для мобильного приложения, чтобы легко находить автора фотографий.
Откройте мобильное приложение и нажмите кнопку с изображением QR-кода.
Расположите документ в кадре таким образом, чтобы он занимал как можно большую площадь снимка.
Вернитесь в список задач основного приложения.
Найдите сфотографированный документ в списке по значению в колонке Автор/Источник.
Читайте также: