Проанализируем ситуацию, которая часто возникает в последних релизах программы 1С:Розница (начиная с версий 2.3.25.x). При обработке документа «ТТН ЕГАИС» в форме проверки продукции в момент сканирования акцизной марки (АМ) сканером штрихкодов на экране внезапно появляется окно «Уточнения данных». При этом данная позиция уже поступала ранее через ЕГАИС, она корректно сопоставлена, и никаких логических причин для уточнения информации нет. Примечательно, что если скопировать код марки в буфер обмена и вставить его в систему вручную через нажатие клавиши F7, то окно уточнения не выводится.
Выясним причину такого поведения системы. Ошибка кроется в механизме обработки внешнего события от подключенного оборудования. В указанных релизах конфигурации событие, которое передается драйвером сканера штрихкодов (работающего в режиме эмуляции COM-порта), некорректно маршрутизируется программным кодом. Это и приводит к ложному вызову формы уточнения данных. Вставка же из буфера обмена обрабатывается платформой как обычный ручной ввод текста, что позволяет обойти сбойный участок кода.
Рассмотрим подробнее способы решения этой проблемы.
Поскольку данная ошибка имеет зарегистрированный статус у разработчиков платформы, для ее устранения был выпущен специальный патч под номером EF_00_00882865. В описании этого исправления прямо указано: «ЕГАИС. При сканировании акцизной марки сканером ошибочно выходит окно уточнения».
Разберем по шагам, как установить это исправление:
После перезапуска сеанса ошибка при сканировании исчезнет.
Если по каким-то причинам вы пока не можете установить патч, рассмотрим альтернативный вариант настройки самого оборудования. Проблему можно обойти, изменив режим работы сканера штрихкодов.
Если ваш сканер работает в режиме эмуляции COM-порта, его следует перенастроить в режим Разрыв клавиатуры (или Keyboard Wedge). В этом режиме сканер не генерирует внешнее событие для драйвера торгового оборудования, а имитирует очень быстрый набор символов пользователем с обычной клавиатуры.
Поскольку 1С воспринимает такое сканирование аналогично ручному вводу данных (как при нажатии F7), окно уточнения появляться не будет. Важно: при переводе сканера в этот режим вам может потребоваться дополнительная настройка префиксов и суффиксов. Как правило, необходимо запрограммировать в самом сканере (путем считывания специальных настроечных штрихкодов из инструкции к устройству) передачу суффикса возврата каретки (символ CR или нажатие клавиши Enter) и указать этот же суффикс в настройках подключаемого оборудования внутри 1С.
До момента установки патча EF_00_00882865 или перенастройки сканера вы можете использовать обходной путь, который был найден опытным путем. Кассир или оператор может отсканировать марку в любой текстовый редактор (например, Блокнот), скопировать ее в буфер обмена, затем в рабочем месте 1С нажать клавишу F7 (вызов функции ввода штрихкода) и вставить марку. Это временное рабочее решение позволит продолжить приемку или продажу алкогольной продукции без блокирующего окна уточнения данных.