Почему не сканируется DataMatrix в 1С:Мобильной торговле на Android и как это исправить?

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

При настройке тестовых стендов для работы с маркировкой товаров (обувь, одежда, табак) специалисты часто сталкиваются с ситуацией, когда обычные линейные штрихкоды (EAN-13) считываются камерой смартфона мгновенно, а специализированные коды DataMatrix (КИЗ) приложение упорно игнорирует. Рассмотрим подробно, как настроить связку приложения RS Mobile: ACS (часто называемого «1С:Мобильная торговля») и 1С:Управление торговлей 11, чтобы успешно проводить операции подбора и агрегации маркированной продукции.

Разберем причину: почему камера «видит» обычный код, но не видит DataMatrix?

Проанализируем ситуацию: мобильное приложение для ТСД — это не просто оболочка над камерой, а сложный программный комплекс, использующий специфические библиотеки декодирования. В отличие от бытовых сканеров QR-кодов, профессиональное ПО для складского учета должно строго различать типы символик. Часто в настройках по умолчанию включены только стандартные 1D-коды для экономии ресурсов процессора и исключения ложных срабатываний. Выясним, какие шаги необходимо предпринять для активации 2D-сканирования.

Шаг 1: Настройка символик в мобильном приложении

Первым делом проверим внутренние настройки самого приложения на Android. Даже если вы используете встроенную камеру смартфона, приложение обращается к виртуальному драйверу сканера. Пройдем по следующему пути:

  1. Откроем приложение и перейдем в раздел Настройки.
  2. Найдем пункт Сканер или Настройки декодирования.
  3. Перейдем в подменю Настройка символик (или Symbol Settings).
  4. В представленном списке найдем DataMatrix. Убедимся, что напротив него стоит галочка «Включено».
  5. Важный нюанс: для маркировки «Честный ЗНАК» часто требуется поддержка инверсных кодов (светлое на темном) и специфических идентификаторов GS1. Если в настройках DataMatrix есть дополнительные опции, включим поддержку GS1 DataMatrix.

Проанализируем работу приложения после этих изменений. Если камера по-прежнему не реагирует на код, перейдем к техническим настройкам API.

Шаг 2: Переключение движка распознавания (Camera API)

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

В настройках сканера найдем пункт Тип сканера или Выбор библиотеки. Попробуем переключить режим с «Автоматически» на Google Vision или Camera API. Библиотека Google Vision значительно лучше справляется с распознаванием плотных кодов маркировки, так как использует современные алгоритмы компьютерного зрения.

Также обратим внимание на режим фокусировки. В режиме «Маркировка» КИЗы на обувных коробках могут быть очень мелкими. Установим режим фокуса в значение Макро или Непрерывный фокус (Continuous Focus), чтобы камера постоянно подстраивалась под изображение.

Шаг 3: Логика работы режима «Маркировка» в 1С

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

  1. Приложение запрашивает сканирование товарного штрихкода (EAN-13). Это необходимо для идентификации номенклатуры в базе 1С:Управление торговлей.
  2. Только после того, как товар найден, приложение переходит в режим ожидания DataMatrix.
  3. Если вы пытаетесь сканировать КИЗ сразу, минуя считывание EAN-13 (или если в настройках не включен режим «Сканировать только КИЗ»), приложение может блокировать ввод данных.

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

Шаг 4: Настройка параметров передачи данных в УТ 11

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

Рассмотрим фрагмент кода, который отвечает за обработку входящих данных от мобильного устройства в типовых конфигурациях. При получении события ВнешнееСобытие, система анализирует источник и данные:


Процедура ВнешнееСобытие(Источник, Событие, Данные)
    
    Если Источник = "ПодключаемоеОборудование" И Событие = "Штрихкод" Тогда
        // Данные содержат считанный штрихкод
        ТекущийШтрихкод = СокрЛП(Данные);
        
        // В случае с DataMatrix важно проверить наличие спецсимволов GS1
        Если СтрНайти(ТекущийШтрихкод, "01") > 0 И СтрНайти(ТекущийШтрихкод, "21") > 0 Тогда
            // Обработка кода маркировки
            ОбработатьКодМаркировки(ТекущийШтрихкод);
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

Шаг 5: Проверка лицензионных ограничений

Важно помнить, что мобильные приложения для работы с 1С (особенно от сторонних разработчиков, таких как RightScan или Клеверенс) имеют модульную систему лицензирования. Выясним, не заблокирована ли функция 2D-сканирования на уровне лицензии:

Многие демо-версии позволяют считывать только одномерные штрихкоды для демонстрации связи с базой, но блокируют работу с DataMatrix до активации лицензии класса «Маркировка». Проверьте в разделе «О программе» на мобильном устройстве, активен ли соответствующий модуль. Для целей тестирования разработчики часто предоставляют временные лицензии (триалы) на 7–14 дней.

Итоги и рекомендации

Подводя итог, если ваша 1С:Мобильная торговля не видит коды маркировки, выполните следующие действия:

  1. Включите DataMatrix и GS1 DataMatrix в настройках символик приложения.
  2. Переключите метод сканирования на Google Vision API для улучшения работы камеры.
  3. Проверьте, установлены ли на телефоне актуальные Google Play Services, так как библиотеки распознавания образов часто обновляются именно через них.
  4. Убедитесь в правильности последовательности: сначала сканируем EAN-13, затем — КИЗ (DataMatrix).

Соблюдение этих шагов позволит вам создать полноценный тестовый стенд на обычном Android-смартфоне, который будет имитировать работу дорогостоящего терминала сбора данных (ТСД) для отладки процессов маркировки в 1С.

← На главную