Добрый День!
8.2 УТ Изминеная!
Задача такова.
Есть форма с ТЗ куда заполняется строчки с номенклатурой.
Нужно сканером по ШК товара определить номенклатуру и если НЕ определил вывести предупреждение и заблокировать возможность дальнейшего сканировать пока пользователь не нажмет "ОК" на предупреждении.
Использовал переменную в виде флага и ВводДоступен().
В результате программа не производит нечего пока весит предупреждение ,как только предупреждение убираем события произошедшие во время якобы блокировки (В виде предупреждения) происходят в той же последовательности.
Подскажите куда копать!
Как заблокировать внешнее событие?
(3) Для Атолла когда-то задавал вопрос тов. MikeFromAtol. Был здесь такой пользователь.
Его ответ был таким : если событие легло в очередь - только обработать. Если не хотите что бы оно вообще ложилось - нужно отключать устройство. По памяти - свойство DeviceEnabled.
Для клавиатурных сканеров получим гемор такого плана : при отключенном устройстве внешняя компонента просто не генерит внешнее событие. Ввод со сканера считается вводом с клавиатуры. И на все ваши Предупреждение(), Вопрос() и прочее будет "нажимать" кнопку "по умолчанию".
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Не ВводДоступен() Тогда
Возврат;
КонецЕсли;
ПолучитьСерверТО().ОбработатьВнешнееСобытие(Источник, Событие, Данные, ЭтаФорма);
ПолучитьСерверТО().ПодключитьКлиента(ЭтаФорма);
(5) Создал форму с сообщение и двумя кнопками "ОК" и "Повторить сообщение"! По умолчанию поставил кнопку "Повторить сообщение"