Почему не работает сканирование с ТСД в мобильном рабочем месте приемки 1С и как его настроить?

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

При внедрении мобильного рабочего места (МРМ) кладовщика в конфигурации 1С:Управление торговлей 11 часто возникает ситуация: на форме приемки при нажатии физической кнопки сканирования терминал сбора данных издает звуковой сигнал или луч лазера загорается, но программа никак не реагирует на действие. При этом, если принудительно открыть поле ввода штрихкода на экране, считанный код вставляется обычной строкой. Выясним причину такого поведения и подробно разберем по шагам, как настроить связку ТСД Urovo и мобильного клиента 1С.

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

Проанализируем механику работы оборудования. По умолчанию на большинстве терминалов сбора данных активен режим Keyboard Wedge (эмуляция клавиатуры). В этом режиме скан-модуль посылает распознанный код в операционную систему точно так же, как если бы пользователь вручную напечатал символы на клавиатуре. Такие данные попадают исключительно в тот элемент управления, на котором установлен фокус ввода.

Интерфейс мобильного рабочего места кладовщика в 1С устроен иначе: на форме «К приемке» нет постоянного открытого поля ввода. Мобильное приложение ожидает системное асинхронное событие — широковещательное сообщение Android (Broadcast Intent). Когда сканер настроен на отправку таких оповещений, мобильная платформа 1С перехватывает сигнал, обрабатывает штрихкод в фоновом режиме, находит нужную строку ордера и автоматически увеличивает количество принятого товара.

Шаг 1. Переключение режима сканирования на ТСД Urovo

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

  1. Откроем системное приложение управления сканером на терминале (обычно оно называется «Настройки сканера», Scanner или ScanSettings).
  2. Перейдем в раздел настройки вывода данных (Output mode).
  3. Переключим режим передачи данных с эмуляции ввода (Keyboard output / Wedge keyboard) на широковещательный режим (Intent output или Broadcast). Это исключит паразитное дублирование символов в случайно активные текстовые поля.
  4. Проверим и зафиксируем параметры широковещательного пакета:

    Action name (Имя действия): чаще всего в терминалах Urovo DT40 используется системное действие android.intent.ACTION_DECODE_DATA либо фирменное urovo.rcv.message.

    String Extra (Имя ключа данных): параметр, в котором передаются сами символы штрихкода. Как правило, это barcode_string или barcode.

  5. Сохраним заданную конфигурацию утилиты сканирования.

Шаг 2. Настройка драйвера торгового оборудования в 1С

Теперь согласуем параметры приема сообщений на стороне мобильной платформы 1С. Рассмотрим порядок настройки подключаемого оборудования:

  1. Запустим мобильное приложение 1С на терминале и перейдем в раздел «Настройки» > «Подключаемое оборудование».
  2. Создадим или откроем имеющийся экземпляр оборудования с типом «Сканеры штрихкода».
  3. В качестве драйвера оборудования выберем стандартный компонент 1С:Сканер штрихкодов (NativeApi).
  4. В параметрах подключения выберем режим «Встроенный сканер / Broadcast».
  5. Заполним поля идентификаторов события в точном соответствии с настройками сканера ТСД: укажем соответствующее действие (Action) и наименование ключа (String Extra). Регистр букв и знаки препинания должны строго совпадать.
  6. Нажмем кнопку «Тест устройства» и выполним пробное сканирование физической кнопкой терминала. В диалоговом окне должны отобразиться тип штрихкода и полученное строковое значение.

Ограничения окружения и особенности запуска

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

  1. Использование веб-клиента: Если доступ к базе организован через мобильный браузер, перехват широковещательных сообщений Android невозможен архитектурно. В браузере работает только ввод клавиатурного типа с активным полем. Для полноценной автоматической обработки приемки на складе необходимо использовать нативный Мобильный клиент 1С (скомпилированный APK-пакет).
  2. Работа через RDP: При подключении к удаленному рабочему столу системные Broadcast Intent среды Android не транслируются внутрь Windows-сессии. При терминальном доступе потребуется использовать либо эмуляцию COM-порта через вспомогательные утилиты, либо эмуляцию клавиатуры с суффиксами и горячими клавишами.
  3. Энергосбережение Android: Проверим системные настройки оптимизации батареи. Для приложения 1С необходимо отключить режим энергосбережения и разрешить неограниченную фоновую активность, чтобы фоновые службы сканирования не засыпали во время пауз в работе кладовщика.

Альтернативные способы интеграции

Если с помощью стандартного механизма широковещательных пакетов NativeApi настроить обмен не удается, рассмотрим резервные варианты:

  1. Специализированный драйвер оборудования: Для линейки терминалов Urovo существуют специализированные внешние компоненты и драйверы от официальных дистрибьюторов. Они устанавливаются в базу 1С в справочник драйверов оборудования и перехватывают системные сигналы устройства через внутренний SDK производителя.
  2. Настройка префиксов и суффиксов в Keyboard Wedge: В случаях, когда перевод устройства в широковещательный режим невозможен, в утилите сканера настраивают передачу префикса (например, клавиши F7, если конфигурация открывает форму поиска ШК по горячей клавише) и обязательного завершающего суффикса перевода строки (Enter или код CR / LF). Однако этот вариант менее надежен для МРМ кладовщика, чем режим Broadcast.
← На главную