Чтобы запустить ERP 2.4 на мобильном клиенте в режиме "Рабочее место работника склада", долго гуглить не придется, всё давно описано, например тут. Это же описание есть в файлах поставки ERP 2.4 - Enterprise20\2_4_8_84\AddDocs\Настройка терминала сбора данных для мобильного рабочего места работника склада.htm
Я же опишу быстрый старт, чтобы сканер ТСД в этом рабочем месте сканировал, работал так будто вы на ПК обычным сканером сканируете.
1. Создаем расширение, адаптацию, отключаем безопасный режим и защиту от опасных действий;
2. Создаем общий модуль с флажком "Клиент (Управляемое приложение)";
3. Наполняем модуль одной функцией:
Функция ИнициализироватьВнешнююКомпонентуRSDriver(глВКRSDriver) Экспорт
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
УстановитьВнешнююКомпоненту ("ОбщийМакет.RSDriver");
Если ПодключитьВнешнююКомпоненту("ОбщийМакет.RSDriver", "RSDriver", ТипВнешнейКомпоненты.Native) Тогда
Попытка
глВКRSDriver = Новый ("AddIn.RSDriver.RSDriver");
ИмяДрайвера = "";
ОписаниеДрайвера = "";
ДоступныеУстройства = "";
Версия = 0;
ТипВК = "";
Загружен = Ложь;
Адрес = "";
глВКRSDriver.ПолучитьОписание(ИмяДрайвера,ОписаниеДрайвера,ДоступныеУстройства,Версия,ТипВК,Загружен,Адрес);
//Сообщить(ДоступныеУстройства);
Возврат Истина;
Исключение
Сообщить(ОписаниеОшибки());
Сообщить("Ошибка создания класса RSDriver");
Конецпопытки;
Иначе
Сообщить("Компонента RSDriver не загружена");
КонецЕсли;
#КонецЕсли
Возврат Ложь;
КонецФункции
Код взят из конфигурации поставщика Urov: https://www.rightscan.ru/download/?dcfile=1s-konfiguraciya-rs-driver-api--rsdriverapicf
Компоненты с драйверами находятся в этом cf в общих макетах, используемые компоненты нужно себе в расширение перетянуть. Я использовал только макет RSDriver.
4. Добавляем в расширение форму обработки рабочего места работника склада (в своем случае 480х640) и размещаем в модуле расширения формы код:
&НаКлиенте
Перем глВКRSDriver;
#Область ОбработчикиСобытийФормы
&НаКлиенте
Процедура ТСД_ПриОткрытииПосле(Отказ)
ТСД_ОбщегоНазначения.ИнициализироватьВнешнююКомпонентуRSDriver(глВКRSDriver);
ИнициализироватьСканер();
КонецПроцедуры
&НаКлиенте
Процедура ТСД_ПриЗакрытииПосле(ЗавершениеРаботы)
ОтключитьСканер();
КонецПроцедуры
&НаКлиенте
Процедура ТСД_ВнешнееСобытиеПосле(Источник, Событие, Данные)
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
Если ПараметрыРежима.Режим = "Сканирование"
И Источник = "RSDriver" И Событие = "Barcode" Тогда
ПриСканированииЗначенияНаСервере(Данные);
КонецЕсли;
#КонецЕсли
КонецПроцедуры
#КонецОбласти
&НаКлиенте
Процедура ИнициализироватьСканер()
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
глВКRSDriver.УстановитьПараметр("Barcode_BEEP", Истина);
глВКRSDriver.УстановитьПараметр("Barcode_BZZ", Истина);
глВКRSDriver.Подключить("Barcode");
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура ОтключитьСканер()
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
Попытка
глВКRSDriver.Отключить("Barcode");
глВКRSDriver.ЗакончитьОжиданиеПриемаДанных();
Исключение
КонецПопытки;
#КонецЕсли
КонецПроцедуры
Не забываем убедиться что обработчики событий привязаны к вызову этих обработчиков в форме.
Стоит учесть нюанс, что бывает сканер по какой то причине глючит (у меня такое пару раз случалось) и это усложняет понимание что не так в коде, потому что в отладке ожидаешь что при сканировании остановишься в обработчике "ВнешнееСобытие", а оно как будто не отрабатывает, а дело в том что сканер ничего не посылает. Проверяется предустановленной "1С Мобильная торговля", если сканер не работает в ней, то закрываем все приложения, перезагружаем устройство, затем снова открываем "1С Мобильная торговля", проверяем реагирует ли приложение на сканер, если да, то продолжаем эксперименты в мобильном клиенте с ERP.
Готово. Полноценное рабочее место работника склада на ERP 2.4 на Android 7.
P.S. Интерфейс, конечно, для работы на Android ИМХО не удобен совсем, придется пилить свои формы для мобильного клиента.
Расширение разработано и протестировано на ERP 2.4.7.141 и мобильный клиент 8.3.14.53.