Задачи для мобильного сотрудника (часть 1)

Давайте проверим его на эмуляторе. Если вы нигде не ошиблись, приложение запустится. Однако, вместо окна авторизации будет отображено сразу окно настроек, так как не указаны данные авторизации (имя пользователя и пароль).

    
Укажите имя пользователя: ivanov
И пароль: 123456

Закройте окно настроек, нажав аппаратную кнопку Назад, будет отображено главное окно программы.

Нажмите на кнопку запуска обмена с 1С (стрелочка вверх на панели справа). Обмен запустится и практически сразу будет выдано сообщение об ошибке, нажав на которое получим сообщение:

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

Добавление мобильных пользователей в базе 1С

Запустите базу 1С и откройте справочник «Мобильные сотрудники»

В качестве мобильного устройства укажите предопределённый элемент «Эмулятор устройства», в табличную часть «Мобильные приложения» добавьте приложение «Задачи» и установите имя пользователя и пароль такие же, как вы ранее задали в программе на эмуляторе (ivanov:123456)

Для создания тестового набора данных откройте в конфигураторе модуль fbaПодпискаНаСобытия и добавьте следующий код в процедуру ПередОтправкойВнешнейТаблицы

Если ИмяТаблицы = "Задачи" Тогда

    	тмпСтруктура = Неопределено;
    	Если МобильныйСотрудник.Наименование = "Иванов Иван Иванович" Тогда
        		тмпСтруктура = Новый Структура("з1,з2,з3,з4,з5",
            		"Произвести инвентаризацию..>",
		            "Выполнить подключение...",
            		"Забрать POSM материалы...",
		            "Наряд по заказу №1...",
		            "Произвести настройку...");
	     КонецЕсли;

	     Если НЕ тмпСтруктура = Неопределено Тогда
         		ш = 1;
		         Для Каждого КлючИЗначение Из тмпСтруктура Цикл
             			НоваяСтрока = ВнешняяТаблица.Добавить();
			             НоваяСтрока.СрокИсполнения = ТекущаяДата() + ?(ш%2=0,ш,-ш) *  60 * 60 * 24;
             			НоваяСтрока.Задача = КлючИЗначение.Значение;
             			НоваяСтрока.Выполнено = Ложь;
             			ш = ш +1;
         		КонецЦикла;
	      КонецЕсли;          		
КонецЕсли;

Модуль fbaПодпискаНаСобытия является «точкой входа» для разработчика, в которой он добавляет свою логику по передаче и обработке полученных данных. В частности, при передаче внешней таблицы в процедуре ПередОтправкойВнешнейТаблицы, должно производиться наполнение таблицы данными, а в процедуре СохранитьВнешнююТаблицу выполняется обработка полученных данных от мобильного приложения.

В нашем примере мы просто всегда передаем  5 задач для мобильного сотрудника.

Сохраните внесенные в конфигураторе изменения, запустите снова приложение «Задачи» на эмуляторе и выполните обмен данными. Обмен завершится успешно, о чем будет выдано соответствующее уведомление, нажмите на него и вы увидите задачи:

    

Так же перед началом запуска программы будет запрошен пароль, т.к. указан в настройках.

В общем, пример можно считать выполненным, мобильное приложение создано и работает. По внешнему виду и функционально соответствует прототипу.

Исполняемый файл для платформы Android  создается автоматически в каталоге bin (подписанный временным отладочным ключом), в нашем случае размер файла fbaSample1Tasks.apk получился всего 1,25 Мб!

На этапе тестирования можно использовать его,  при выпуске релиза лучше подписать исполняемый файл своим ключом разработчика. Это не сложно и может быть выполнено из Eclipse мастером, подробнее см., например, здесь или здесь.

Загрузите полученный файл в 1С как версию 1.00. Для этого откройте справочник «Версии мобильный приложений», откройте элемент на редактирование и на панели инструментов  нажмите кнопку  Загрузить и выберите apk файл.

В следующей части немного переделаем внешний вид (установим темную тему) и рассмотрим  процесс автоматического обновления программы. Также вкратце рассмотрим структуру срегенерированного по шаблону Android-приложения и его настройки.

Похожие записи: