Имя: Пароль:
1C
 
Эмулятор сканера штрихкода не срабатывает
,
0 petya_
petrov_63
 
12.12.22
17:34
Озадачен розницей 2.3. Хочу проверить работу сканера штрихкода при отсутствии энного.
Нагуглил обработку из нескольких строк.

&НаКлиенте
Процедура ПослатьКод(Команда)
    ПодключитьОбработчикОжидания("ПослатьКодВСистему", 5, Ложь);
КонецПроцедуры

&НаКлиенте
Процедура ПослатьКодВСистему()
    МассивПосыла = Новый Массив;
    МассивПосыла.Вставить(0, ШтрихКодВФорме); //Это и есть штрихкод
    МассивПосыла.Вставить(1, Неопределено);
    Оповестить("ScanData", МассивПосыла, "ПодключаемоеОборудование");
КонецПроцедуры


Открываю ЧекККМ и пытаюсь там симитировать сканирование. Событие ОбработкаОповещения в документе срабатывает, штрихкод передается, но добавление строки с новым тогваром не происходит.
Что я делаю не так.
1 Мимохожий Однако
 
12.12.22
17:47
Драйвер сканера установи
2 petya_
petrov_63
 
13.12.22
10:17
(1) не помогло
3 petya_
petrov_63
 
13.12.22
14:17
вверх
4 petya_
petrov_63
 
14.12.22
11:19
еще раз
5 ass1c
 
14.12.22
11:33
Прям все условия "И" отрабатывают? Может вот это мешает обработки данных МенеджерОборудованияУТКлиент.ЕстьНеобработанноеСобытие()?

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
...    
    // ПодключаемоеОборудование
    Если Источник = "ПодключаемоеОборудование" И ВводДоступен()
        И Не ТолькоПросмотр Тогда
        Если ИмяСобытия = "ScanData" И МенеджерОборудованияУТКлиент.ЕстьНеобработанноеСобытие() Тогда

            ДанныеШтрихкодов = МенеджерОборудованияУТКлиент.ПреобразоватьДанныеСоСканераВМассив(Параметр);
            ОбработатьШтрихкоды(ДанныеШтрихкодов);
            
        КонецЕсли;
    КонецЕсли;
    // Конец ПодключаемоеОборудование
6 arsik
 
гуру
14.12.22
11:36
Вот же есть нормальный эмулятор, без всякого кода. Добавляешь этот драйвер в 1С и поехали
https://rarus.ru/downloads/2623/
7 arsik
 
гуру
14.12.22
11:38
(5) Есть такая фишка. В отладке лучше не останавливаться на строке ВводДоступен(). Через отладку он будет ложь, а если поставить точку останова ниже, тогда норм.
8 ass1c
 
14.12.22
11:40
(7) не знал, круто
9 Kassern
 
14.12.22
11:46
(7) (8) Есть так же проблема с запросами где участвует МенеджерВременныхТаблиц. Если в отладке попробуешь получить одну из таких таблиц, то получить ошибку при выполнении запроса впоследствии.
10 magicSan
 
14.12.22
11:46
Еще надо глПодключаемоеОборудованиеСобытиеОбработано = Ложь;
11 petya_
petrov_63
 
14.12.22
11:58
Большое спасибо всем
(6) а как он вызывается? Поставил драйвер, подключил оборудование - остался вопрос как вызвать событие?
12 petya_
petrov_63
 
14.12.22
12:20
Увидел окно.
Еще раз спасибо.
13 petya_
petrov_63
 
14.12.22
12:26
Нет не понял как вызывается. Окно произвольно открывается, ну как минимум само, а хотелось бы его вызвать в нужный момент.
14 arsik
 
гуру
14.12.22
12:53
(13) Оно появляется когда подключается оборудование. Чем оно тебе мешает. При вводе данных, в него, оно вызывает то же самое событие, что и обычный сканер. Я не понимаю, что еще надо, или что непонятно?
15 petya_
petrov_63
 
14.12.22
12:59
(14) ясно, спасибо. Ну да, вроде постоянно висит. Теперь все нормально.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.