Уловить ошибку удалось и через эмулятор ККТ. Например, последовательность такая:
Набиваем чек, нажимаем левой кнопкой мыши кнопку оплата "Наличные" (хотя можно любой тип оплаты).
Открылась следом форма оплаты и если тут бездумно шлёпать несколько раз на клавиатуре "Enter", поймаем эту самую ошибку.
Дело в чем, при однократном нажатии Enter форма оплаты нормально закроется и чек распечатается, а если достаточно быстро нажать несколько раз Enter: форма оплаты закрывается, далее внутри программы идёт обработка объектов и печать чека (а это пара секунд) и в этот момент мы клавишей Enter снова запускаем оплата "Наличными" , т.к. при первом нажатии мы эту кнопку активировали (установили фокус).
Решение простое (одна строчка кода), при начале пробития чека необходимо снять "фокус" с любой из кнопок оплаты.
Я это сделал следующим образом: создаем расширение и вставляем "Перед" вызовом процедуры "ОплатитьТовары(…) основной формы обработки РМКУправляемыйРежим строчку
ТекущийЭлемент = Элементы.КартинкаЧО01Меню;
т.е. я переместил фокус на кнопку "Меню".
Пример расширения приложен. Тестировалось на релизе 2.2.11.29.
Спасибо. Загрузил расширение в конфигурацию, подожду отзывы пользователей.
Интересно, что у меня не получилось в Эмуляторе воспроизвести. Возможно, эмулятор неправильный. Он, короче, как-то быстро обрабатывает, и я не успеваю нажать (например) дважды.