|
v7: Win7, Сканер ШК, Драйвера Атол 6, Демо-База | ☑ | ||
---|---|---|---|---|
0
Fisco
10.05.15
✎
19:36
|
Исходный набор:
Win7 32 разр.,Symbol LS2208, USB-интерфейс в режиме CDC (в системе виден как COM-порт). Демо-конфигурация 7.7, устанавливаемая вместе с драйверами. В параметрах конфигурации сканер находится без проблем, данные считываются без суффиксов и префиксов. Подключен, ошибок нет. При запуске конфигурации выдается сообщение об успешном подключении компоненты. Проблема: Не отрабатывает процедура "ОбработкаВнешнегоСобытия" глобального модуля. Отладчиком ставил точку останова - тишина. Что я делаю не так? |
|||
1
Web00001
10.05.15
✎
19:38
|
>>Что я делаю не так?
Откуда ж знать. Может ты не добавил сканер в оборудование, или щелкаешь сканером в отладчике. |
|||
2
Fisco
10.05.15
✎
19:42
|
В какое оборудование? В демо-базе от атола только в глобальнике прописана процедура "ОбработкаВнешнегоСобытия". В этой базе объектов нет.
|
|||
3
Fisco
10.05.15
✎
19:43
|
Т.е. после запуска нет открытых форм и должна отрабатывать процедура в глобальнике. А она молчит как партизан.
|
|||
4
Cap_1977
10.05.15
✎
20:27
|
В7плюс.длл зарегистрированна ?
|
|||
5
Fisco
10.05.15
✎
20:41
|
Да. Хотя зачем она здесь?
|
|||
6
Остап Сулейманович
10.05.15
✎
20:46
|
(5) Ходим в сервис - параметры - Драйвер устройств ввода. Говорим "поиск оборудования". Чего-нибудь сканируем. То что получилось - в студию
|
|||
7
Fisco
10.05.15
✎
20:48
|
Получилось:
COM11, штрихкод в "чистом" виде, без префиксов и суффиксов. |
|||
8
Cap_1977
10.05.15
✎
20:48
|
ОбработкаВнешнегоСобытия должна находиться в модуле формы справочника/документа
|
|||
9
Остап Сулейманович
10.05.15
✎
20:50
|
(7) Вернуться на закладку "Драйвер устройств ввода" выставить все параметры так как получилось при поиске. Выставить фишки "Устройство включено" и (по желанию) "Включать устройство при старте".
|
|||
10
Fisco
10.05.15
✎
21:07
|
Именно так все и выставлено. Но процедура в отладчике не отрабатывает.
|
|||
11
Torquader
10.05.15
✎
21:11
|
Сканер передаёт данные ?
Насколько я помню, он в режиме COM-порта ожидает сигнала готовности к приёму. |
|||
12
Fisco
10.05.15
✎
21:11
|
(8)
В этой конфигурации нет ни документов, ни справочников. Это демо конфигурация из поставки драйверов Атола. |
|||
13
Fisco
10.05.15
✎
21:12
|
(11)
Ну в режиме поиска оборудования передает. А что за "сигнал готовности к приёму"? |
|||
14
Torquader
10.05.15
✎
21:26
|
(13) Если в режиме поиска передаёт, то нужно смотреть, что он передаёт, и выбирать символы, передаваемые после штрих-кода (0Dh 0Ah) в качестве суффикса.
Я про демо не помню, но старый драйвер АТОЛ (новый, насколько я помню, платный) прекрасно работал. P.S. в глобальнике только нужно создать объект и "вкатать" в него настройки. |
|||
15
Fisco
10.05.15
✎
21:33
|
В поиске, в выдаваемой строке только штрихкод, никаких символов больше нет.
Глобальник: "// Пример для 7.7 Перем Scaner Экспорт; //Переменная для работы со сканером Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные); Если Scaner.OldVersion<>0 Тогда //Работа драйвера совместима с предыдущей версиией // Источник="BarCodeScaner" (для других устройств свои названия) //Событие="BarCodeValue", Данные=ПолученныеДанные Сообщить("Old Version <> 0"); Сообщить("Источник: "+Строка( Источник )); Сообщить("Событие: "+Строка( Событие )); Сообщить(Строка("Данные от устройства: "+ Данные)); Иначе //Работа драйвера не совместима с предыдущей версиией // Источник="BarCodeScaner" (для других устройств свои названия) //Событие="BarCodeValue", Данные=НомерСобытия Сообщить("Old Version = 0"); Scaner.EventNumber=Число(Данные); Сообщить("Данные от устройства: "+Scaner.ScanData); Сообщить("Порт: "+Scaner.PortDescription); Сообщить("Модель: "+Scaner.DeviceDescription); Сообщить("Лог. устройство: " + Строка(Scaner.CurrentDeviceNumber) + " | " + Scaner.CurrentDeviceName); Scaner.DeleteEvent(); КонецЕсли; Scaner.DataEventEnabled = 1; Сообщить("Количество сообщений "+Строка(Scaner.DataCount)); КонецПроцедуры Процедура ПриЗавершенииРаботыСистемы() // Отсоединение объекта Scaner = 0; КонецПроцедуры Если ЗагрузитьВнешнююКомпоненту("Scaner1C.DLL")<>0 Тогда Scaner = СоздатьОбъект("AddIn.Scaner45"); // Создание объекта сканера из внешней компоненты Scaner.AutoDisable = 1; Scaner.DataEventEnabled = 1; Scaner.OldVersion = 0; Сообщить("Внешняя компонента сканера штрих-кода успешно загружена"); Иначе Сообщить("Внешняя компонента сканера штрих-кода - Scaner1C.DLL не найдена"); КонецЕсли;" |
|||
16
Torquader
10.05.15
✎
21:44
|
А суффикс на вкладке "Параметры" правильно настроен ?
|
|||
17
Fisco
10.05.15
✎
21:47
|
Я там ничего не выставлял, ведь в поиске не было суффикса.
|
|||
18
Torquader
10.05.15
✎
23:23
|
(17) Тогда нужно:
1 - настроить в сканере суффикс. 2 - настроить этот суффикс в драйвере. И всё заработает. |
|||
19
Fisco
10.05.15
✎
23:45
|
Правильно ли я понимаю, что надо по штрихкоду из мануала запрограммировать его с суффиксом #13?
И такой же указать в параметрах? |
|||
20
Fisco
11.05.15
✎
13:15
|
Torquader. Большое спасибо за помощь, все получилось!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |