Android беспроводной Bluetooth сканер 1D/2D штрихкода и терминал сбора данных для 1С

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

Бесплатное приложение, превращающее Android-смартфон в беспроводной 1D/2D Bluetooth сканер и терминал сбора данных для 1С и прочих POS систем. Не требует драйверов и доработки конфигураций.

Приложение сочетает в себе функциональность беспроводного сканера штрих-кода и терминала сбора данных. Работает под управлением Android версии не ниже 4.0, а значит для превращения в беспроводной сканер подойдет отслуживший свое смартфон. Минимальные требования: наличие модуля Bluetooth спецификации 2.0 и камеры.

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

Когда устройство подключено к ПК, например, в конфигурации 1С открыт документ или рабочее место кассира, отсканированные штрих-коды сразу передаются в 1С. Если соединение прервано отсканированные штрих-коды сохраняются в базе данных, при последующем подключении их можно передать в 1С все сразу или порциями. Т.к. передача количества N > 1 осуществляется последовательной передедачей штрих-кода N раз, то максимально возможное количество в режиме терминала сбора данных ограничено во избежании потери данных при передаче. Все-таки это не совсем ТСД, с точки зрения конфигурации 1С это обычный сканер.

Опционально в приложение можно загрузить базу с наименованиями товаров. Когда такая база подгружена, в списке собранных данных дополнительно к штрих-кодам отображаются соответствующие им наименования товаров, характеристик и единиц измерения. База подгружается через http, годится как файл, так и web-сервис, способный передать массив JSON объектов такой структуры:

[
  {
    "barcode": "Значение штрих-кода",
    "name": "Наименование",
    "advanced_name": "Характеристика (может быть пустым)",
    "unit": "Единица (может быть пустым)"
  },
  {
    "barcode": "2003591840008",
    "name": "Пальто",
    "advanced_name": "40, Розовый",
    "unit": "шт."
  }
]

Для загрузки базы достаточно отсканировать в приложении QR-код URL указывающим на этот JSON, важно, что бы URL заканчивалась на ,json, так приложение понимает, что ему нужно загрузить базу товаров. Загрузка производится в фоновом режиме, приложение сразу же возвращается в рабочий режим. Пока так, потом надо будет сделать внешнюю обработку для конфигураций на БСП автоматически куда-нибудь выгружающую такой массив и отображающую QR с URL.

Пример QR кода с базой товаров

Последовательность действий для подключения:

  1. Установить приложение из Google Play
    Доступно в Google Play
  2. Спарить смартфон и ПК по Bluetooth
  3. Запустить приложение на смартфоне
  4. На ПК открыть Панель управления, перейти в раздел Устройства и принтеры - Изменить параметры Bluetooth
  5. Перейти на вкладку COM порт, и создать новый исходящий порт для смартфона и службы Lineris Barcode Scanner
  6. В 1С:Предприятии в настройках подключаемого оборудования создать новый экземпляр оборудования Сканер штрихкода, подключенный к ранее созданному COM порту.

Подробнее смотри видео инструкцию:

См. также

Комментарии
1. Ярослав Ткаченко (jackill88) 13.09.17 09:16 Сейчас в теме
Для "поиграться" - хорошая, отличная вещь. Но на практике раздолбать смартфон куда легче, чем специализированный ТСД, плюс время считывания (нужен быстрый автофокус - он не у всех телефонов есть) в разы отличается. Так особо не сэкономишь, т.к. пострадают нервы пользователей, и придется за лекарства платить))
2. Дмитрий Кулешов (kuld) 127 13.09.17 09:56 Сейчас в теме
(1) Предприниматель в малом бизнесе нынче прижимистый пошел... Если ему в ЕГАИС не надо, то вероятность продажи ему, например, Honeywell 1400 за 7 т.р. вместо какого-нибудь noname 1D китайца в пределах 1 т.р. близка к нулю. А при этом он хочет рассылать своим покупателям через мессенджеры купоны на скидки в виде QR-кодов. Так вот под такие маркетинговые акции сойдет вполне.
А если бесплатный вариант не зашел - самое время поговорить о Honeywell или Zebra.
MSK_Step; jackill88; +2 Ответить 1
3. Andrei Novikov (dreamadv) 111 14.09.17 16:28 Сейчас в теме
(2) Дмитрий, а мой вариант видели ? https://infostart.ru/public/564460/
С блютуф конечно здорово, что не нужно ничего устанавливать дополнительно на ПК
4. Дмитрий Кулешов (kuld) 127 14.09.17 17:47 Сейчас в теме
(3) Именно Ваш не смотрел, но видел множество вариантов в Google Play где требовалась установка утилиты на ПК, которая тем или иным каналом получая данные от андроида эмулировала клавиатуру. Вот именно этого я никак и не мог понять, RFCOMM для Bluetooth вещь совершенно стандартная, аппаратные сканеры именно через него и работают - зачем городить этот огород...
5. assa Петренко (assa) 54 14.09.17 21:49 Сейчас в теме
Выведите, пожалуйста настройки считывания. Не читает лидирующий 0. Спасибо за труд!
6. Дмитрий Кулешов (kuld) 127 14.09.17 22:29 Сейчас в теме
(5) А какую кодировку не читает? Я сейчас попробовал UPC-A, CODE-39 и QR - читает корректно.
Собсно у Zebra Crossing на эту тему никаких ограничений нету, должно все читать, и лидирующие нули тоже.
7. assa Петренко (assa) 54 14.09.17 22:32 Сейчас в теме
(6) EAN-13. Там не в ограничениях дело, а в настройках. У меня такая же проблема с ТСД была.
8. Дмитрий Кулешов (kuld) 127 14.09.17 22:42 Сейчас в теме
(7) Да, действительно, у EAN-13 лидирующий ноль отрезает. Ушел читать Zebra Crossing Manual........
9. Дмитрий Кулешов (kuld) 127 14.09.17 23:11 Сейчас в теме
(7) Надо подумать что тут можно сделать. EAN-13 с лидирующим нулем считается UPC-A. Вернее так, EAN-13 является расширением UPC-A, и в том случае, если первая цифра в нем 0, то он распознается как UPC-A.

Как вариант можно вывести в настройки ZXing перечень кодировок, если из них убрать UPC-A и UPC-E, то EAN-13 и EAN-8 будeт возвращаться с ведущими 0.

Если ничего лучше не придумаю, сделаю так.
10. assa Петренко (assa) 54 15.09.17 00:00 Сейчас в теме
На вашей программе не проверял, но обычные сканеры без перенастроек у EAN-8 так же режут лидирующий 0.
11. Ivan Khorkov (vano-ekt) 911 15.09.17 07:12 Сейчас в теме
26.4.5. Сканирование штрихкодов

Мобильное устройство, обладающее камерой, позволяет выполнять функции сканирования штрихкодов. Для доступа к этой возможности платформа предоставляет специальный интерфейс.
https://its.1c.ru/db/v8311doc#bookmark:dev:TI000001452
12. Ivan Khorkov (vano-ekt) 911 15.09.17 07:13 Сейчас в теме
&НаКлиенте
Процедура ОткрытьИнтерфейсСканирования(Команда)
    ОбработчикСканирования = Новый ОписаниеОповещения("ОбработкаСканирования", ЭтотОбъект);
    ОбработчикЗакрытия = Новый ОписаниеОповещения("ОбработкаЗакрытияИнтерфейса", ЭтотОбъект);
    СредстваМультимедиа.ПоказатьСканированиеШтрихКодов("Наведите камеру на штрихкод", ОбработчикСканирования, ОбработчикЗакрытия);
КонецПроцедуры
...Показать Скрыть
13. Дмитрий Кулешов (kuld) 127 15.09.17 10:26 Сейчас в теме
(11) Это не на мобильной платформе, нативный Андроид.И не для мобильной платформы.
14. Дмитрий Кулешов (kuld) 127 15.09.17 13:50 Сейчас в теме
(10) Обновлено. В настройках отключаем UPC-E и UPC-A, EAN коды приходят с лидирующими нулями.
15. assa Петренко (assa) 54 15.09.17 17:21 Сейчас в теме
(14) Спасибо. Буду пробовать
16. Максим Радченко (coolseo) 31 17.09.17 02:30 Сейчас в теме
Здравствуйте, исходники на git выкладывали?
17. Дмитрий Кулешов (kuld) 127 17.09.17 09:36 Сейчас в теме
18. Дмитрий Кулешов (kuld) 127 23.09.17 23:55 Сейчас в теме
Новая версия! Легким движением руки смартфон превращается не только в сканер штрих-кода, но и в терминал сбора данных.
И по прежнему не требует дополнительных утилит на ПК или доработки конфигураций 1С.
Оставьте свое сообщение