Почему сканер штрихкодов вводимый код печатает в активное поле формы 1С и как это исправить

Системный администратор 1С v8.3 (Обычные формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

При подключении сканера штрихкодов к «1С:Предприятие» пользователи часто сталкиваются с ситуацией, когда при сканировании товара полученные цифры попадают не в табличную часть документа и не вызывают поиск номенклатуры, а печатаются прямо в то поле ввода, где находится курсор (например, в реквизит «Сумма оплаты» или «Комментарий»). Рассмотри причины возникновения такой проблемы и детально разберем варианты ее решения на примере конфигурации «1С:Управление торговлей» редакции 10.3.

Выясним причину некорректного поведения сканера

Проанализируем механику работы сканера штрихкодов с операционной системой и 1С. По умолчанию большинство сканеров поставляются с заводскими настройками в режиме эмуляции клавиатуры (USB HID). В этом режиме сканер распознается операционной системой как стандартная клавиатура, которая быстро посимвольно вводит код.

Чтобы платформа 1С смогла распознать переданный поток символов именно как сканирование штрихкода и вызвать специальное событие ОбработкаВнешнегоСобытия, сканер должен посылать управляющий символ-разделитель (суффикс) в конце считываемой последовательности. Чаще всего в качестве суффикса используется символ перевода строки CR (Carriage Return, код #13 или клавиша Enter).

Если суффикс не запрограммирован в самом сканере или не указан в параметрах торгового оборудования в 1С, система считывает данные как обычный клавиатурный ввод и отправляет символы в текущий фокус поля формы.

Способ 1. Настройка суффикса и префикса в режиме клавиатуры (USB HID)

Разберем по шагам, как правильно настроить сканер и программу в режиме клавиатуры:

  1. Программирование самого сканера. Откройте руководство пользователя вашего сканера (User Guide). Найдите раздел с управляющими штрихкодами настройки суффиксов (Suffix / Carriage Return / Enter). Отсканируйте управляющий код для добавления суффикса CR (значение 13 или 0D в шестнадцатеричной системе).
  2. Проверка ввода в текстовом редакторе. Откройте стандартный Блокнот и отсканируйте любой товар. Курсор после ввода цифр должен автоматически перейти на новую строку. Это подтверждает, что управляющий суффикс перевода строки успешно запрограммирован на сканере.
  3. Настройка драйвера торгового оборудования в 1С. Зайдите в меню Сервис -> Торговое оборудование -> Подключение и настройка торгового оборудования.
  4. Перейдите на вкладку Сканеры штрихкода и проверьте используемую обработку обслуживания. Вместо сторонних драйверов рекомендуется выбрать стандартный драйвер 1С:Сканеры штрихкода (NativeApi) или 1С:Сканеры штрихкода (COM).
  5. Перейдите в параметры драйвера торгового оборудования и в поле Суффикс укажите значение 13 (или #13 в зависимости от требования используемого драйвера).
  6. Сохраните настройки и нажмите кнопку Проверить, чтобы убедиться в правильности считывания внешнего события.

Способ 2. Перевод сканера в режим виртуального COM-порта (USB CDC)

Наиболее стабильным решением для работы с торговым оборудованием в 1С является перевод устройства в режим виртуального последовательного порта. В этом случае данные сканера гарантированно обрабатываются драйвером как внешнее событие и не зависят от фокуса ввода на форме.

  1. Перевод сканера в эмуляцию COM-порта. Найдите в инструкции к устройству и отсканируйте управляющий штрихкод USB CDC Host или Simple COM Port Emulation.
  2. Установка системного драйвера. В Диспетчере устройств Windows появится новое устройство. Если драйвер не установился автоматически, укажите путь к драйверу эмуляции USB Serial от производителя сканера (для современных ОС Windows 10/11 подходит стандартный виртуальный драйвер USB-последовательного устройства).
  3. Определение номера порта. Откройте Диспетчер устройств и узнайте назначенный номер виртуального порта (например, COM3).
  4. Настройка оборудования в 1С. В параметрах сканера штрихкода в 1С выберите порт COM3, укажите скорость и сохраните настройки.

Особенности работы в конфигурациях на обычных формах

Рассмотрим важную деталь для конфигураций на обычных формах, таких как «Управление торговлей» редакции 10.3. В этих формах перехват клавиатурного сканера работает только тогда, когда открытое окно поддерживает обработку внешних событий. Если открыта форма без обработчика или диалоговое окно, сканирование может не сработать.

Если необходимо принудительно вызвать форму поиска по штрихкоду, в документах и справочниках обычных форм можно нажать клавишу F7 (или кнопку «Поиск по штрихкоду»), после чего отсканировать код в появившееся диалоговое окно.

← На главную