Почему в мобильном приложении 1С не отображаются драйверы оборудования из БПО?

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

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

Разграничение БПО для десктопа и мобильных приложений

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

Когда вы видите ошибку типа Тип не определен (ИдентификаторОбсужденияСистемыВзаимодействия), это явный признак того, что в состав мобильного приложения попали модули, которые пытаются обратиться к функционалу Системы взаимодействия или другим серверным компонентам, не поддерживаемым мобильной платформой. Чтобы избежать этого:

  1. Убедитесь, что вы используете именно ту версию БПО, которая адаптирована для мобильных устройств.
  2. Внимательно отфильтруйте состав подсистем: исключите все модули, требующие ВызовСервера или работу с COM-объектами, которые невозможны на Android/iOS.
  3. Используйте только те драйверы, которые имеют поддержку мобильной платформы.

Методы отладки и правильное развертывание

Многие разработчики сталкиваются с проблемой, когда после сборки APK-файла через Сервис сборки мобильных приложений функционал оборудования пропадает. Это часто связано с тем, что автоматический сборщик не всегда корректно включает необходимые компоненты в состав приложения. Рассмотрим альтернативный подход, который значительно упрощает отладку:

Вместо постоянной пересборки APK-файла для каждой проверки, используйте «прямое подключение» к опубликованной конфигурации:

Настройка интерфейса и прав доступа

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

  1. Откройте Конфигуратор и проверьте, установлены ли галочки видимости в Командном интерфейсе для подсистем ПодключаемоеОборудование.
  2. Проверьте Роли пользователя. Убедитесь, что у пользователя, под которым работает мобильный клиент, есть права на чтение справочников ДрайверыОборудования и ПодключаемоеОборудование.

Инициализация оборудования при запуске

Не забывайте, что БПО в мобильном приложении требует правильной инициализации. В модуле управляемого приложения или в процедуре ПриНачалеРаботыСистемы необходимо предусмотреть вызов методов инициализации оборудования. Если этот код отсутствует или выполняется некорректно, платформа не сможет «подхватить» установленные драйверы и вывести их в список выбора.

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


// Пример инициализации в модуле управляемого приложения
Процедура ПриНачалеРаботыСистемы()
    // Проверка, что мы в мобильном клиенте
    Если МобильныйКлиент() Тогда
        // Вызов менеджера для инициализации оборудования
        МенеджерОборудованияВызовСервера.ИнициализироватьОборудование();
    КонецЕсли;
КонецПроцедуры

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

← На главную