Как правильно подключить сканер штрихкодов к 1С:Управление торговлей 10.3 и устранить ошибки инициализации драйвера?

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

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

Анализ причин возникновения ошибок

Выясним, почему внешняя компонента сканера может не определяться в 1С или работать некорректно:

  1. Несовместимость разрядности платформы 1С и внешней компоненты (DLL): Стандартные обработки обслуживания для обычных форм используют 32-разрядные (x86) библиотеки и ActiveX-объекты. Если на рабочем месте установлен 64-битный (x64) клиент платформы «1С:Предприятие 8.3», он физически не может загрузить 32-битную DLL в свое адресное пространство. В результате при попытке инициализации драйвера программа сообщает, что объект не создан или драйвер не установлен.
  2. Ограничения лицензирования сторонних драйверов: При использовании пакетов драйверов торгового оборудования от сторонних производителей (например, «АТОЛ: Драйвер устройств ввода» современных версий) сканеры сторонних брендов или бюджетных линеек работают в демонстрационном режиме. В демо-режиме драйвер намеренно вводит 10-секундную задержку перед передачей каждого считанного штрихкода в программу.
  3. Конфликт обработок обслуживания: Попытка подключить обработку обслуживания, не предназначенную для установленной версии компоненты (например, использование обработки для драйверов АТОЛ вместе с библиотекой ScanOpos от 1С), приводит к невозможности прочитать свойства устройства.
  4. Некорректная настройка суффиксов: Если сканер переведен в режим эмуляции COM-порта, но в его памяти не запрограммирован суффикс возврата каретки (CR / LF), внешнее событие ОбработкаВнешнегоСобытия может не вызываться вовремя или срабатывать только в специализированных окнах (например, в РМК), игнорируя документы и справочники.

Пошаговое решение: Переход на 32-битную платформу и штатный драйвер «1С»

Рассмотрим правильный алгоритм настройки оборудования без задержек и платных лицензий.

Шаг 1. Проверка разрядности платформы «1С:Предприятие»

Для конфигураций на базе обычных форм (включая УТ 10.3) необходимо использовать 32-разрядный клиент 1С. Проверим установленную версию через меню «Справка» – «О программе». Если в описании указано (x86-64), удалим текущую версию или установим параллельно 32-битный дистрибутив платформы (x86). Запуск базы для настройки оборудования необходимо выполнять строго из-под 32-битного клиента.

Шаг 2. Удаление конфликтующих драйверов

Если в системе ранее устанавливались платные пакеты драйверов устройств ввода (ДТО), удалим их через панель управления Windows. Это предотвратит перехват виртуальных COM-портов и блокировку системных библиотек.

Шаг 3. Установка компоненты «1С:Сканеры штрихкода» (ScanOpos)

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

regsvr32 "C:\Program Files (x86)\1C\1C_ScanOPOS\ScanOPOS.dll"

Шаг 4. Подключение оборудования в 1С:Управление торговлей 10.3

Разберем порядок действий внутри информационной базы:

  1. Откроем меню «Сервис» – «Торговое оборудование» – «Подключение и настройка торгового оборудования».
  2. Перейдем на вкладку «Сканеры штрихкода» и добавим новое устройство.
  3. В поле «Обработка обслуживания» выберем стандартную обработку 1С: Сканеры штрихкода (файл 1CScanOPOSScan_v2.epf из каталога шаблонов конфигурации).
  4. В поле «Модель» укажем стандартный сканер 1С.
  5. Нажмем кнопку «Параметры» и зададим настройки порта:
    • Порт: укажем номер COM-порта, определенный в диспетчере устройств Windows (например, COM5);
    • Скорость: 9600 (или значение, заданное в сканере);
    • Биты данных: 8, Стоп-биты: 1;
    • Суффикс: обязательно укажем значение 13 (символ возврата каретки CR) или 13, 10 (CR, LF).
  6. Нажмем «Функции» – «Тест устройства». Считаем любой штрихкод: в поле теста должны моментально отобразиться считанные данные без задержек.

Альтернативный вариант: Режим эмуляции клавиатуры (USB HID)

Если нет необходимости использовать виртуальный COM-порт или возникают сложности с пробросом портов в терминальной сессии, рассмотрим вариант перевода сканера в режим клавиатуры:

  1. Найдем в руководстве пользователя к сканеру настроечные штрихкоды.
  2. Считаем управляющий штрихкод перевода в режим USB HID (Keyboard Emulation).
  3. Запрограммируем префикс функциональной клавиши F7 (стандартная клавиша поиска по штрихкоду в 1С) и суффикс Enter (код 13).

При такой схеме сканер при каждом считывании автоматически имитирует нажатие клавиши F7, открывает окно ввода штрихкода в любом открытом документе или справочнике и подтверждает ввод нажатием клавиши Enter без необходимости настройки внешних компонент и COM-портов.

← На главную