Беспроводной (WIFI, сотовая связь) штрихкод сканер для 1С на Android устройстве.
Два варианта использования: Драйвер подключаемого оборудования для конфигураций на БПО (без внесений изменений в конфигурацию), второй вариант самостоятельная интеграция в конфигурации без БПО и самописные конфигурации по примерам конфигураций добавленых в комплект публикации.
Драйвер подключаемого оборудования для конфигураций на БПО (Библиотека Подключаемого Оборудования http://its.1c.ru/db/metod8dev/content/4829/hdoc), такой же как АТОЛ, Гексагон и от самой 1С, которые встроены в конфигурацию, никаких изменений в конфигурации не требуется !
Устанавливается в пользовательском режиме через меню «Подключаемое оборудование» -> «Драйверы оборудования». Работает, так же как любой другой сканер штрихкодов, в т.ч издает звук beep при удачном сканировании и успешном приеме данных в 1С. 🙂
Данные ШК передаются через сеть. Телефон или планшет может работать через WIFI с клиентским сеансом 1С, или через сотовую сеть (если проброшен сетевой порт клиентской машины). Для системы 1С работа android сканера прозрачна, как если бы он был аппаратным ШК сканером.
Настройки подключения к 1С, использования камеры (автозум/фонарь) и типов принимаемых штрихкодов сохраняются на устройстве. После настройки сканирование безостановочное (такое же как у апаратного сканера), режим сканирования влючается сразу после запуска приложения на андройд устройстве.
Проверена работа на РМК (Рабочее место кассира) Розница 2.2
Данная публикация может пригодиться малым организациям мини-магазинам с небольшим количеством продаж, штучным товаром, или например крупногабаритным. Или вариант не ставить каждому менеджеру в офисе по ШК сканеру, и можно например организовать открытие бумажного документа в его 1С на компьютере сканированием документа его же телефоном, что в определенных случаях быстрее чем искать документ в бд или например применяется ограниченый доступ к полному журналу документов. Или реализация использования скидочных карт с более стилистически красивыми 2D кодами QRCODE, DATAMATRIX, при установленых ранее лазерных сканерах без подержки 2D кодов. Все возможные реализаций каких-либо других бизнес процессов с применением штрихкодирования товаров/документов/операций. Так же удобно использовать разработчикам, в процессе создания и тестирования разработок на 1С связаных с использованием штрихкодирования, т.е. использовать в качестве эмулятора аппаратного специализированого ШК сканера.
Подерживаемые типы штрих кодов: EAN13, EAN8, CODE39, CODE93, CODE128, CODEBAR, QRCODE, PDF417(ЕГАИС), DATAMATRIX, ITF, RSS14
Минимальная версия Android 4.0.3.
Примеры конфигураций для интеграции (без БПО) и самописных конфигурации 1С 8.х (управ., обыч.) и 1С 7.7, WEB-Клиент не поддерживается.
Благодарности:
Соломатин Александр: ВК NativeAPI на Delphi и FreePascal //infostart.ru/public/81644/
Александр (Chieftain): Шаблон внешней компоненты на Delphi (COM) //infostart.ru/public/15527/
Dushyanth Maguluru: https://github.com/dm77/barcodescanner за реализацию простого использования библиотек zbar, zxing под android.
Позже постараюсь добавить шаблоны пустых конфигураций управляемого и обычного приложения, для интеграции в конфигурации без БПО. Если кому нужно оставьте комментарий.
Однозначно в закладки -))
Очень нужна без БПО жду)
Взял в группу:http://infostart.ru/community/groups/22/publications/
Идея интересная. Взял в копилку. Спасибо! Шаблоны то-же будут интересны, для самописных складских-учетных систем.
То есть смартфон используется чисто как сканер штрихкодов? А зачем в этом случае городить какой-то драйвер? Мобильная платформа умеет обрабатывать push-сообщения плюс в ней же есть штатный функционал сканирования с помощью встроенной в телефон камеры.
Делаем отправку push из стационарной базы, по приему push на телефоне запускаем обработчик сканирования. Результат сканирования передаем стационарной базе любым способом, который нам понравится — веб-сервис, хттп-сервис, файл и т.д.
В чем преимущество Вашего драйвера перед озвученным подходом?
(6) То что вы предлагаете это больше реализация варианта аля ТСД, чем то, что реализовывает данная публикация. Да это именно ШК сканер для стационарной 1С. «Какой-то драйвер» это стандартный драйвер для БПО (http://its.1c.ru/db/metod8dev/content/4829/hdoc) , такой же как АТОЛ, Гексагон и от самой 1С которые встроены в конфигурацию, устанавливается через саму 1С в пользовательском режиме. Поэтому важно тут то что никаких изменений («отправить push из стационарной базы/Результат сканирования передаем стационарной базе любым способом, который нам понравится — веб-сервис, хттп-сервис, файл») в конфигурации не потребуется. И для системы работа такого сканера прозрачна как если бы он был аппаратным ШК сканером. Так же push требует наличие интернета, здесь система самодостаточна может работать без интернета. Сканирование без остановочное, опять же точно так же как обычным сканером. Данная публикация может пригодиться малым организациям мини магазинам с небольшим количеством продаж. Проверял работу на РМК (Рабочее место кассира) Розница 2.2., или скажем не ставить каждому менеджеру в офисе по ШК сканеру, а можно например организовать открытие бумажного документа в его 1С на компе сканированием документа его же телефоном, что в определенных случаях быстрее чем искать документ в бд. У всех совершенно разные бизнес процессы, и вариантов реализации использования масса. Так же можно использовать разработчикам для тестирования все возможных интеграций штрихкодирования, товаров / документов.
(7) то есть драйвер сам умеет отправлять запросы на мобильное приложение? публикация стационарной базы на веб-сервер не требуется?
Мобильное приложение что-то отсканировало. Теперь данные должны попасть в центральную базу. Допустим, на указанный IP адрес они попадут. А далее как?
То есть Ваш драйвер умеет слушать трафик? И увидев на определенном порту входящий трафик от мобильного приложения — передает его в 1С?
(8) На мобильное приложение запрос не отправляется (на телефоне запустить нужно самостоятельно). Мобильное приложение отправляет данные на 1С драйвер (внешняя компонента) слушает TCP порт. Приложение мобильное (Найтивное на Java, не мобильная платформа) отправляет отсканированые данные на ip + port на клиентскую машину / или сервер rdp. Драйвер / внешняя компонента генерирует внешнее событие 1С (стандартное для БПО) как будто поступили скан данные с ШК сканера. Соответственно никаких публикаций не на какие веб сервера не требуется.
(9) теперь все ясно. Надо было подробнее в публикации расписать, а так звучит здорово!
Жаль, что драйвер не умеет отправлять запросы на мобильное приложение. Если Вы его научите это делать, то одним только мобильным сканером дело не ограничится. Можно полноценные двусторонние обмены писать, соответственно это куда более широкая область применения.
Можно свой GCMs запилить, по сути
(9) не понял ничего (наверно тупой).
Значит я открываю две программы и запускаются два сервачка, которые слушают порт (один? ладно пусть два разных). Я сканирую на телефончег и говорю куда отправить? Ладно пусть у меня (такого умного) открыта одна программа, но на терминалке. Значит порт будет слушаться на терминалке?
Ладно, хрен с моими вопросами. Сколько соединений одновременно и на чем мультиплексирование?
(4) сорока.
(10) Извините 🙂 но не понимаю зачем это все ? Для других запросов автоматизации есть и другие более удобные решения. В данном случае это 5-е колесо. В моем случае 2-х сторонний обмен только то, что приложение на телефоне / планшете пищит beep после сканирование, только в том случае, если данные 1С получены, так как об успешной передаче драйвер на стороне 1С мобильному приложению сообщает. В противном случае после сканирования beep нет, а высвечивается сообщение что проблемы с подключением. Что-то еще «городить» говоря вашими словами в данном аспекте не вижу смысла.
(11) по видимому, там без разницы, на скольких телефонах запущено приложение сканирования. Сколько трафика пришло на порт — столько и отработалось. При этом драйверу без разницы, чей это трафик,, какого конкретного приложения. Автор, я прав?
(14) Протокол UDP значит? Это где херятся пакеты целиком или они приходят в разном порядке, если большие?
(11) Про какие сервачки речь ? Драйвер это не отдельное приложение это dll (внешняя компанента) драйвером оборудования называют ее 1С в конфигурациях на БПО. Слушает порт dll какой настраивается в настройке оборудования см.скриншоты. При rdp да будет слушать порт сервер с rdp. Одновременно можно сканировать в один сеанс 1С можно с нескольких устройств. мультиплексирование сделано на indy компанентах delphi в компоненте dll по дефолту соединений 10. На телефоне не нужно указывать каждый раз куда отправить в настройках указывается ip и порт. После чего после запуска сразу включается режим сканирования.
(15) нет TCP c переподключением в случае отсыхания и использованием установленого соединения если еще живо.
(14) Да если они настроены на отправку на 1 порт
1 вопрос — в чем выгода данного подхода? Сканер штрих-кода (проводной) стоит дешевле годного Android устройства…
(19) в том что Android устройство чаще всего уже есть. А сканер нужно покупать дополнительно 🙂 тестировал на планшете с камерой в 2мп работает вполне ! Соответственно будет жить и на хламо телефоне 🙂
(16) select значит.
(1) Очень хотелось бы получить такой шаблон (сейчас используем УПП 1.3 где нет БПО, а необходимость использования ТСД на Android есть)
(16) 1с умеет HTTP сервер. Не проще создать кучу пустых документов, выдать твои телефоны кладовщикам с ключом (ид юзера) и отправлять запросы в 1С, которая по юзеру будет пхать все в последний документ (который может и сама создать, если статус документа не понравился)?
(23) это решение другой задачи
(22) Это не ТСД, а сканер для стационарного компьютера с 1С, шаблон подключения ВК к конфигурации без БПО делаю.
(24) Почему другой? Твои люди с телефончиком ходят или еще и с компьютером по складу? если им лень таскать компьютер, то им лень и программу запускать на нем, значит 1с у них не запущена и твой драйвер не слушает порт.
Нет, я могу предположить, что человек с телефончиком сидит за компьютером и сканирует товар на кассе. А телефончик у несчастного как торговое оборудование. Да! это весьма интересно, согласен. Но тогда придется требовать, чтоб люди покупали себе исправные телефончики, а а несломленные айфоны.
(26) Еще раз это разного типа задачи данная обработка это простая замена ШК сканеру стационарного компьютера. Бегать с ним по складу не имеет смысла. Для своих людей есть другая реализация этой же идеи переработанный android freerdp клиент, где сканирование работает по такому же принципу генерируя внешнее событие на стороне 1С. В данном случае получается полноценный ТСД.
(28) Я что? я не ни чего! У меня близкая задача стоит. Тема знакома (уже набило оскомину). У тебя сканер шлет, а у меня браузер. У тебя компонента слушает select-ом, а у меня не прокатило такое мультиплексирование. Асинхноррые через rc = WSAWaitForMultipleEvents(cnt, pEvents, FALSE, INFINITE, FALSE); ограничены 64 событиями. Надо другое мультиплексирование IO+socket. Думал ты знаешь, а я спрошу.
Чем в данном случае задачу не решает обычная веб камера?
(30) Да это аналогичное решение. Но веб камера тоже не у всех есть. т.е. можно использовать любой вариант при наличии того или иного оборудования 🙂
(29) (0) хорошее решение задачи пикнуть сканером по ШК на торг-12 или счете, когда клиент пришёл. Респект.
(6)Покажите пример
А исходники мобильного приложения не будете выкладывать? Или там простецкий код по запуску внешнего приложения?
С компонентой все понятно. За идею и реализацию — однозначно плюс.
(33) что значит «покажите пример» ? я озвучил возможность, а не готовое решение
вот про pushhttp://v8.1c.ru/o7/201502push/index.htm
про http-сервисы легко ищется в гугле
Телефон в сети 1с сервера должен быть или клиентского приложения на компьютере?
(35) Как настроите сеть может и по мобильный связи работать если редирект порта настроите.
(34) Да все просто на базеhttps://github.com/dm77/barcodescanner используется ZXing библиотека.
(22)
примеры без интеграции добавил в публикацию
(3) Добавлено в публикацию
(32) пикнуть для вида можно и свистком. Зачем систему-то засирать?
Если кому нужно 🙂 добавлю версию ВК для 1С 7.7. Поставьте + на этом комментарии. Отправлю оповещение когда добавлю ВК для 7.7.
(41) с чего взял, что «для вида»?
по ШК отбирается, выводится на экран/изменяется документ, закодированный в штрихкоде.
И где здесь «засирание системы»?
На телефоне DNS4003 Android 4.1.2 Scanner1C.apk не устанавливается «При синтаксическом анализе пакета возникла неполадка»
(44) Отправил в личку собраный apk под 4.1.2 в публикации под 4.2
Работает, очень даже работает
Спасибо. Вы молодец! и на Java и на С и на 1С, все сделали!
(47) Спасибо за отзыв здесь Java Delphi 1C, хотя и на C тоже программирую 🙂
Прикрутил с своей обработке по работе с акцизными марками ЕГАИС в 1С Рознице — работает с EAN13 и с PDF. И не нужно покупать отдельный сканер 2D, все делается обычным андроидфоном. Еще кладовщику на складе настрою — и не нужно покупать ТСД. Спасибо
Здравствуйте. Можно ли запустить библиотеку драйвера для подключения android сканера в конфигурации 1с 7.7? Спасибо за ответ.
(50) Да завтра сделаю компоненту для 7.7
В App store будет клиент под IOS через какое-то время. Сразу хочу 🙂 сказать на тему сканера за 30-60т.р. ввиде яблоко-телефона, он бесплатен когда аппарат уже есть.
(1) Надо. +1
Зачетная вещь! Было бы хорошо если бы еще сделали шаблоны пустых конфигураций управляемого и обычного приложения, для интеграции в конфигурации без БПО. Было бы вообще супер!!! Жду шаблонов.
(54) Уже добавлено 🙂
(1)
(55) У вас выложено:
1) Конфигурация с интегрированным драйвером (управляемое приложение)
2) Конфигурация с интегрированным драйвером (обычное приложение)
нужно уточнить это шаблоны для объединения с конфигурациями без использованием БПО или нет.
(56) уже добавлено
(57) Да это конфигурации для интеграции без БПО. Там пример кода по инициализации компоненты и обработке входящих данных. Копируете код к себе в любую конфигурацию и все будет работать. Конфигурации уже включают в себя компоненту. Дополнительно нужно скачать только apk с приложением для android.
Я тоже в свое время писалИспользование ТСД на WM 6 как беспроводной сканер с получением данных из 1С
и
На самом деле написать приложение на том же xamarin проще и удобнее чем на 1С
Кроме того можно использовать пуш уведомления
(60)
тут же пишут, ничего не надописать
(61) Для нормальной работы, нужно под каждую бизнес задачу нужно писать свой код. Иначе бы была бы одна универсальная конфигурация.
Нет серебряной пули.
Добавил пример конфигурации и компоненту под 7.7, а так же выложил пак исходников особо мнительные в шапочках из фольги могут собрать проект сами по своему вкусу 🙂
(51) Спасибо за добавленные файлы. Какие части мне нужно скачать для внедрения в конфигурацию 1с7.7 ТиС и смартфона андроид?
(66) Android приложение ШК Сканер 1С (версия Androind 4.0.3 и выше) + Пример конфигурации с копонентой 1C 7.7
(67) Сделано 🙂
Добрый день. Запускаю конфу для 7.7 и ругается
Еще при проверке в управляемом приложении все работает только на толстом клиенте. А вот если запустить тонкий клиент, то ошибка
(70) (71) Не удается воспроизвести оба варианта ошибки. Написал в личку попробуем совместно разобраться.
(71) Об этом я писал в личку автору еще вчера. есть такое если упр. формы запустить в тонком, если в толстом то все вери гуд.
(71)(73) С тонким клиентом разобрался. Просите просто нет рабочих проектов на тонком клиенте, не совсем был в курсе как правильно инициализировать внешние ВК в этом режиме. Внесу исправления. С 7.7 пока не совсем понятно в чем загвоздка но разберусь 🙂
(74) по тонкому клиенту, я уже вчера разобрался, дописал
по 7.7 в личку написал
Все исправил файлы перезалил. 🙂
(76) Спасибо. Все работает
Хвала и уважение автору решения! Браво.
Если у кого есть проблемы с интеграцией пишите помогу разобраться 🙂
Добрый. Не могу на строить на серверном варианте УТИВСК 2.0.16.17. Платформа 8.3.9.1850.
На какой машине открывать порт? На сервере или на клиенте? Как проверить работу сканера?
(80) Если это терминальный сервер, то порт открывается на сервере RDP и в клиенте на устройстве указать IP сервера, если клиент 1С запускается на клиентской машине, то порт открывается на ней и в приложении нужно указать порт клиентской машины.
Ошибка при настройке Ошибка получения описания драйвера
{ОбщийМодуль.ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.Модуль(2432)}: Значение не является значением объектного типа (ПолучитьНомерВерсии)
(82) Драйвер попробуйте еще раз указать 1С, чтобы он был добавлен в систему. Похоже dll не загрузилась.
(83) Да, все работает. Запускал 64 разрядную платформу
Приветствую. Не могу скачать. На моем счете больше, чем 10 см. 4 раза жму, 4 раза соглашаюсь, что спишут и отправят ссылку. По итогу не списывают и не отправляют. Можете помочь?
(85) возможно проблема с инфостартом, и возможно уже исправлена
(86) Возможно. Сегодня пришло 4 ссылки 😉
для iOS планируете приложение?
(88) Тот кто обещал помочь с этим, не справился 🙂 так что скорее нет чем да (
(28)
А случаем не подскажете где раздобыть такой RDP клиент, уж очень интересно его поюзать, возможности то открываются неплохие.
(90) Ответил в личку
Мое видение использования смартфона в качестве ТСД:
1) на Andriod смартфоне запущен RDP клиент с запущенной в нем 1С;
2) 1С использует стандартный драцвер сканера штрихкода (клавиатурный);
3) сканер штрихкодов с блутус интерфейсом передает штрихкод по блутусу в смартфон;
4) на смартфоне утилита перенаправляет сосканированный штрихкод в порт клавиатуры.
Проблемка в отсутствии утилиты на Android смартфоне перенаправляющей штрихкод с блутуса в клавиатуру 🙁
(92) вообще блутуф сканер подключеный к смартфону эмулирует клавиатуру из коробки и вроде как дополнительно в даном случае ничего не нужно. Возможно есть какие-то иные модели сканеров которые работают иначе. Могу под заказ собрать freerdp клиент который будет работать с этим сканером. Так же есть наработке в этом плане. Отправил информацию в личку.
Копмплексныя 2.4 демо. При установке внешней компоненты ошибка. Как правильно установить?
Комплексная 2.4 демо. При установке драйвера ошибка, что делать? Получилось два сообщения. Удалите одно, пожалуйста.
Возможно используете 64битный клиент
нет, 32 битный
Благодарю. Работает. на УПП 1.3.124