|
v8: подключение ШК | ☑ | ||
---|---|---|---|---|
0
_Dynamic_
31.01.14
✎
18:17
|
Есть самописная база.
На розничный магазин необходимо подключить сканер ШК. Для реализации продукции, инвентаризации и так далее. Сканер MERCURY. Подключается через COM-порт. В программке "Hypertrm" проверил, что сканер работает, считывает штрих-код. Скачал Scaner1C.dll. Запустил. На вкладке Сервис - Параметры появилась вкладка "Сканер штрих-кода". Делаю настройки. Жму "Поиск...". Сканер видит. Делаю тестовый пик, но в строчку "Данные" ничего не появляется... Не говоря уже про то, что не выполняется ВнешнееСобытие() в формах. В чем может быть косяк? Есть подозрение что в дровах. Может кто даст ссылку на нормальные дрова. Буду рад любой информации. Спасибо. |
|||
1
_Dynamic_
31.01.14
✎
18:25
|
Никогда раньше Сканер ШК не подключал, не внедрял. Весь инет уже перелопатил - получается. Помогите. SOS !
|
|||
2
_Dynamic_
31.01.14
✎
18:37
|
ап!
|
|||
3
neosfen
31.01.14
✎
18:43
|
К чему подключаете? Платформа, конфигурация?
|
|||
4
_Dynamic_
31.01.14
✎
18:45
|
(3) 8.2 толстый клиент
Конфигурация самописная |
|||
5
_Dynamic_
31.01.14
✎
18:46
|
в COM-порт подключаю
|
|||
6
neosfen
31.01.14
✎
18:55
|
Scaner1C.dll - это старая атоловская вк? Если так, то она, насколько помню, не работает в 8.2 с какой-то там версии. Нужно использовать стандартную компоненту 1с: Сканер штрихкода.
Сейчас поищу как с ней приблизительно работать |
|||
7
_Dynamic_
31.01.14
✎
18:58
|
(6) Да. Что то атоловское скачивал.
А "1с: Сканер штрихкода" можно откуда то скачать? или где мне ее взять? |
|||
8
Tatitutu
31.01.14
✎
19:03
|
Драйвера АТОЛ - скачай и установи
http://www.magazka.com/MAGAZKAHelp/scr/nastroikato.html |
|||
9
BarakuzA
31.01.14
✎
19:08
|
(8) - делал аналогичное, но для управляемых форм. но принцип тот же могу помочь.
|
|||
10
neosfen
31.01.14
✎
19:10
|
ПрогИД = "AddIn.Scanner";
ПодключитьВнешнююКомпоненту(ПрогИД); Драйвер = Новый (ПрогИД); Драйвер.Подсоединить("BarCodeScaner"); Драйвер.УстройствоВключено = 1; Драйвер.ПосылкаДанных = 1; Драйвер.Порт = <номер ком-порта>; Драйвер.БитДанных = 8; Драйвер.Скорость = 9600; Драйвер.СтопБит = 0; Драйвер.СтопСимвол = <код суффикса>; Драйвер.ИмяСобытия = "ПолученШтрихкод"; Драйвер.Занять(1) = 0 Тогда Драйвер.УстройствоВключено = 1; Драйвер.ПосылкаДанных = 1; Драйвер.ОчиститьВход(); Драйвер.ОчиститьВыход(); Где-то так. После этого будет срабатывать ВнешнееСобытие() Стандартный есть на диске ИТС и в интернете полно их. scanopos.exe или 1cbarcode.exe |
|||
11
BarakuzA
31.01.14
✎
19:11
|
&НаКлиенте
Перем Драйвер; &НаКлиенте Процедура ПриНачалеРаботыСистемы() Попытка ПрогИД="AddIn.Scanner"; ПодключитьВнешнююКомпоненту(ПрогИД); Драйвер = Новый (ПрогИД); Сообщить("Компонента для сканера штрих-кодов загружена!"); Исключение Сообщить ("Невозможно подключить внешнюю компоненту!"); КонецПопытки; Попытка ВерсияИзДрайвера = Драйвер.ПолучитьНомерВерсии(); Исключение Сообщить ("Невозможно определить версию драйвера!"); КонецПопытки; Если Лев(СокрЛП(ВерсияИзДрайвера), 5) <> "8.0.8" Тогда Сообщить ("Версия драйвера не поддерживается. Требуемая версия компоненты 1С:Сканер ШК - 8.0.8!"); КонецЕсли; Если Драйвер.Подсоединить("Сканер штрихкода") <> 0 Тогда Сообщить ("Ошибка (1) при подключении устройства!"); КонецЕсли; //при подключении USB-сканера с эмуляцией COM-порта указывать порт 5 в свойствах виртуального COM-порта в диспетчере устройств //сканер настроить - префикса нет, суффикс - CR Драйвер.БитДанных = 8; Драйвер.Порт = 1; Драйвер.Скорость = 9600; Драйвер.СтопБит = 1; Драйвер.СтопСимвол = 13; //CR - carriage return Драйвер.ИмяСобытия = "ПолученШтрихкод"; Если Драйвер.Занять(1) = 0 Тогда Драйвер.УстройствоВключено = 1; Драйвер.ПосылкаДанных = 1; Драйвер.ОчиститьВход(); Драйвер.ОчиститьВыход(); Сообщить("Сканер подключен и готов к работе!"); Если Драйвер.УстройствоВключено <> 1 Тогда //Отключить(); Драйвер.УстройствоВключено = 0; Драйвер.Освободить(); Драйвер.Отсоединить(); Сообщить ("Ошибка (2) при подключении устройства!"); КонецЕсли; Иначе //Отключить(); Драйвер.УстройствоВключено = 0; Драйвер.Освободить(); Драйвер.Отсоединить(); Сообщить ("Ошибка (3) при подключении устройства!"); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПриЗавершенииРаботыСистемы() Если Драйвер <> Неопределено Тогда Драйвер.УстройствоВключено = 0; Драйвер.Освободить(); Драйвер.Отсоединить(); КонецЕсли; КонецПроцедуры &НаКлиенте Функция ОбработатьСобытие(Данные) Экспорт ШтрихКод = Данные; Драйвер.ПосылкаДанных = 0; Возврат СокрЛП(ШтрихКод); КонецФункции &НаКлиенте Функция СобытиеОбработано() Экспорт Драйвер.ПосылкаДанных = 1; КонецФункции |
|||
12
_Dynamic_
31.01.14
✎
19:11
|
(10) Спасибо! Сейчас буду пробовать
|
|||
13
BarakuzA
31.01.14
✎
19:12
|
&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные) //Сообщить ("Внешнее событие"+Событие); Если Событие = "ПолученШтрихкод" Тогда //Сообщить("ШтрихКодПолучен"); ШК = ОбработатьСобытие(Данные); //Сообщить("Код карты "+ШК); Объект.ТекущаяДК = СокрЛП(ШК); ДискКартаПриИзменении(Объект.ТекущаяДК); СобытиеОбработано(); КонецЕсли; КонецПроцедуры |
|||
14
_Dynamic_
31.01.14
✎
19:14
|
(11) Спасибо за помощь! Будет сегодня ночью чем заняться! А то ваще беда какаета с этими Сканерами ШК :))
|
|||
15
BarakuzA
31.01.14
✎
19:15
|
(14) - сам долго мучился. теперь работает нормально.
|
|||
16
neosfen
31.01.14
✎
19:21
|
(15) С ними похоже все в своё время помучились )
|
|||
17
_Dynamic_
31.01.14
✎
19:23
|
(16) Вот и мой черед настал :)
|
|||
18
0level
31.01.14
✎
20:04
|
есть прога comkey. в ней можно установить порт и скорость, после чего comсканер будет работать как сканер с интерфейсом "Разрыв клавиатуры" (клавиатурный).
http://www.sbarcode.com/soft/comkey/comkey.html |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |