Как настроить и подключить USB-сканер штрихкода в 1С:Розница

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

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

Шаг 1. Диагностика физического подключения и определение интерфейса

Наличие стандартного разъема USB на кабеле сканера не означает, что операционная система автоматически воспримет его как стандартное устройство ввода. Большинство современных сканеров поддерживают мультиинтерфейсный режим работы:

  1. Режим эмуляции клавиатуры (USB HID): сканер определяется операционной системой как дополнительная клавиатура. При считывании кода данные передаются напрямую в поле активного фокуса ввода (например, в блокнот или строку поиска).
  2. Режим эмуляции COM-порта (USB-VCP / RS-232 Emulation): сканер создает в системе виртуальный последовательный порт (Virtual COM Port). В этом режиме сканер не выводит данные в текстовые редакторы, а передает их напрямую специализированному драйверу торгового оборудования.

Проанализируем состояние устройства в диспетчере устройств Windows. Откроем диспетчер устройств и выполним переподключение USB-кабеля:

  1. Если при подключении в ветке Устройства HID появляется новое устройство, сканер функционирует в клавиатурном режиме. Откроем блокнот и отсканируем любой заводской штрихкод (например, EAN-13 на упаковке товара). Если символы не печатаются, необходимо проверить целостность USB-порта или перевести сканер в базовый режим.
  2. Если устройство появляется в разделе Порты (COM и LPT) или отображается в ветке других устройств с восклицательным знаком, сканер переведен в режим COM-эмуляции и ожидает установки драйвера виртуального порта (обычно на базе чипов Prolific pl2303, Silicon Labs CP210x или оригинальных драйверов производителя).
  3. Для точной локализации неопознанного оборудования включим в меню диспетчера устройств вид Устройства по подключению, что позволит сразу увидеть конкретный узел USB-контроллера, к которому привязан сканер.

Шаг 2. Переключение режимов работы сервисными штрихкодами

Любой промышленный или торговый сканер настраивается считыванием специальных сервисных штрихкодов из руководства пользователя (Programming Manual). Для перевода сканера в нужный режим выполним следующую последовательность действий:

  1. Найдем в документации к сканеру раздел Interface Selection или Reset Defaults.
  2. Считаем штрихкод сброса до заводских параметров (Reset to factory defaults или Recall Default).
  3. Считаем штрихкод активации нужного интерфейса: USB HID Mode (для режима клавиатуры) или USB COM Port Emulation / Enable RS-232 Emulation (для COM-режима).
  4. При переключении в режим COM-порта сканер издаст звуковой сигнал перезагрузки. После этого установим соответствующий виртуальный драйвер COM-порта и перезагрузим рабочую станцию.

Шаг 3. Настройка драйверов и интеграция с 1С

Выясним, как интегрировать настроенный сканер с конфигурацией 1С:Розница:

  1. Подключение через виртуальный COM-порт (рекомендуемый способ): перейдем в раздел Администрирование -> Подключаемое оборудование -> Сканеры штрихкода. Создадим новый экземпляр оборудования, выбрав стандартизированный драйвер 1С:Сканеры штрихкода (NativeAPI). В параметрах укажем номер COM-порта из диспетчера устройств и выполним команду Тест устройства. Использование стандарта NativeAPI исключает необходимость регистрации устаревших внешних библиотек через regsvr32.
  2. Подключение в режиме клавиатуры (USB HID): современные версии драйверов 1С поддерживают работу с клавиатурными устройствами. В настройках оборудования задается порт Клавиатура. Для корректного отделения штрихкода от случайного ручного ввода обязательно настроим в сканере префикс и суффикс (стандартно — символ возврата каретки CR / Enter).

Шаг 4. Устранение проблем со считыванием длинных кодов Code 128

Если сканер успешно считывает стандартные штрихкоды EAN-13, но полностью игнорирует длинные коды формата Code 128 (не издает звуковой сигнал при сканировании), разберем внутренние причины такого поведения:

  1. Ограничение максимальной длины штрихкода: во многих прошивках по умолчанию установлено ограничение на длину считываемой строки (например, не более 20–24 символов). Если штрихкод содержит 28 символов, оптический модуль фиксирует полосы, но контроллер бракует код по длине. Для исправления найдем в мануале раздел Code 128 / Length Setting, отсканируем код настройки максимальной длины (Set Maximum Length) и с помощью цифровой таблицы мануала зададим предельное значение (например, 80 символов).
  2. Блокировка подтипов и спецсимволов: буквенно-цифровые коды могут относиться к подмножествам GS1-128 / EAN-128 с управляющим символом FNC1. Считаем из сервисной книги штрихкод Enable GS1-128 или Enable Code 128 All Subsets.
  3. Влияние раскладки клавиатуры в режиме HID: если сканер работает в режиме клавиатуры, а в коде присутствуют латинские буквы, активная русская раскладка клавиатуры в Windows преобразует символы в кириллицу. Для устранения проблемы переведем сканер сервисной командой в режим передачи через Alt Mode / NumPad Emulation либо переведем устройство в режим виртуального COM-порта.

Шаг 5. Особенности работы со сканером в терминальном доступе (RDP)

При подключении тонких клиентов к 1С через удаленный рабочий стол (Windows Server) клавиатурный режим может приводить к разрыву пакетов данных на нестабильных каналах связи. Для стабильной работы настроим проброс последовательных портов:

  1. Переведем локальный сканер в режим виртуального COM-порта.
  2. В свойствах ярлыка подключения RDP на вкладке Локальные ресурсы нажмем кнопку Подробнее и установим флаг Порты (Ports).
  3. На сервере откроем командную строку и выполним команду change port /query, чтобы убедиться, что локальный порт успешно перенаправлен в сессию терминала, после чего выберем этот порт в настройках торгового оборудования 1С.
← На главную