Почему сканер штрихкодов считывает код, но 1С не находит товар в документах?

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

При подключении торгового оборудования в конфигурациях на базе 1С:Предприятие 8.3 (в частности, в 1С:Управление торговлей 11) через удаленный рабочий стол (RDP) часто возникает ситуация: сканер успешно считывает штрихкод в окне тестирования драйвера, но при попытке сканирования в рабочем документе позиция не находится, либо в конце кода добавляются лишние служебные символы (CR, LF). Разберем по шагам причины такого поведения и способы настройки оборудования.

Причина проблемы: конфликт суффиксов и непечатных символов

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

  1. CR (Carriage Return, код 13) — возврат каретки.
  2. LF (Line Feed, код 10) — перевод строки.

Если на аппаратном уровне сканер настроен на передачу пары символов CR LF, а в настройках драйвера 1С в поле Суффикс указан только CR (13), драйвер отсекает только первый управляющий символ. Символ LF (10) остается внутри текстовой строки как непечатный перенос строки. В результате система выполняет поиск по строке вида 123123123[LF], и совпадение в справочнике ШтрихкодыНоменклатуры не находится.

Способ 1. Корректная настройка суффиксов в параметрах драйвера 1С

Разберем, как правильно задать суффиксы в параметрах подключаемого оборудования в 1С:

  1. Перейдем в раздел НСИ и администрирование → РМК и оборудование → Подключаемое оборудование.
  2. Откроем карточку настроенного сканера штрихкодов и нажмем кнопку Параметры подключения.
  3. Обратим внимание на поле Суффикс. Если сканер при тесте выдает строку с CR LF, необходимо указать оба кода через запятую: 13,10 (или выбрать в таблице символов последовательно CR[13] и LF[10]).
  4. Нажмем кнопку Тест устройства и выполним сканирование. Строка должна корректно разбираться на штрихкод и суффикс без остаточных непечатных знаков.
  5. Сохраним настройки по кнопке Записать и закрыть.

Способ 2. Аппаратная перенастройка сканера (Symbol / Zebra LS1203)

Более надежным решением является удаление лишнего суффикса на самом устройстве, чтобы сканер передавал только стандартный CR или работал вовсе без суффиксов при COM-подключении:

  1. Откроем руководство пользователя (Product Reference Guide) для модели сканера.
  2. Найдем раздел настройки суффиксов передачи данных (Scan Suffix / Data Transmission Formats).
  3. Считаем служебный штрихкод сброса суффиксов (Clear Suffix) или установим стандартное значение суффикса Enter (CR) без добавления LF.
  4. Если сканер работает в режиме виртуального COM-порта (USB CDC), суффикс можно отключить полностью, так как драйвер 1С фиксирует завершение пакета данных по таймауту.

Способ 3. Проверка проброса COM-портов в терминальной сессии (RDP)

Рассмотрим особенности работы со сканером при терминальном подключении к серверу:

  1. Эксклюзивный доступ к порту: виртуальный или физический COM-порт может использоваться только одним приложением в один момент времени. Если на сервере параллельно запущена база 1С:Торговля и Склад 7.7, захватившая порт, 1С:Управление торговлей 11 не сможет перехватить внешнее событие. Перед началом работы в новой базе убедимся, что старая конфигурация закрыта.
  2. Проверка номера порта в сессии: на сервере в командной строке можно выполнить команду: change port /query Команда отобразит таблицу соответствия локальных портов клиента (например, \Device\RdpDrPort\;COM4:1\Session\1) и назначенных номеров в текущей сессии RDP. Именно полученный номер порта указывается в настройках драйвера 1С.
  3. Настройка параметра «Таймаут»: из-за сетевых задержек RDP пакет данных штрихкода может дробиться. В параметрах драйвера 1С рекомендуется увеличить значение параметра Таймаут (или Чувствительность) до 50–100 мс, чтобы драйвер не разрывал единый штрихкод на отдельные внешние события.

Способ 4. Альтернативный режим эмуляции клавиатуры (HID) с префиксом F7

Если проброс виртуальных COM-портов через RDP работает нестабильно, можно перевести сканер в режим эмуляции клавиатуры:

  1. Считаем сервисным штрихкодом перевод устройства в режим HID Keyboard Emulation.
  2. В сервисной документации настроим передачу префикса F7 и суффикса Enter.
  3. В этом случае при сканировании в документах 1С автоматически будет вызываться окно поиска по горячей клавише F7, код заполнится в поле поиска и подтвердится нажатием клавиши Enter. Этот метод не требует проброса COM-портов и специализированных драйверов в сессии RDP.
← На главную