Демонстрационное приложение «Задачи сотруднику»

Хотите проверить работу “FBA Toolkit” на реальном примере? Нет ничего проще, потребуется только android-телефон,  устанавливать и настраивать платформу «1С: Предприятие» не надо.

Скачайте с Google play и установите на ваше Android-устройство приложение “Задачи сотруднику”.

Get it on Google Play

Создание этого приложения мы рассматривали в статье “Задачи для мобильного сотрудника (часть 2)”, этот вариант фактически ничем от него не отличается, исправлений минимум:
- заменена иконка приложения;
- установлена светлая тема;
- в  настройках изменен ip-адрес веб-сервера с эмулятора на демонстрационный сервер fba.profi1c.ru.

В браузере введите адрес http://fba.profi1c.ru/demoFba для запуска демонстрационной конфигурации на базе “1С:Предприятие 8.2” (режим веб-клиента). Выберите пользователя “Менеджер” (без пароля):

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

В левой части отображается список зарегистрированных Android-устройств и мобильных сотрудников,  в правой – список задач для них.

Добавьте новый элемент в справочник “Мобильные компьютеры”, где код укажите такой же как в мобильной приложении (см. в настройках).

Добавьте нового сотрудника в справочник “Мобильные сотрудники”. Закрепите за ним только что созданный КПК. В табличную часть внесите мобильное приложение “Задачи”, укажите имя пользователя и пароль.

Аналогичные имя пользователя и пароль установите и в приложении “Задачи сотруднику” на Android-устройстве.

Подготовьте несколько задач данному мобильного сотруднику.

На Android-устройстве в приложении “Задачи сотруднику”:
- выполните процедуру синхронизации данных (кнопка со стрелочкой “вверх” на панели), список задач будет загружен;
- отметьте несколько задач как выполненные (установите флажок) и повторите процедуру синхронизации.

В демо-базе 1С:
- обновите список задач по окончании обмена (Все действия/Обновить), выполненные задачи будут зачеркнуты.

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

Если обмен с сервером не проходит:

  • проверьте корректность данных авторизации: имя пользователя и пароль;
  • сравните номер номер мобильного устройства, введенный в 1С, с номером в Android-приложении, они должны быть идентичными;
  • проверьте, что для мобильного сотрудника установлен флаг “Доступ разрешен”;
  • сервер может быть перегружен или недоступен в настоящее время, попробуйте позднее.

Примечания

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

2. В этой демонстрационной конфигурации для хранения списка задач используется регистр сведений “ЗадачиМобильномуСотруднику” с измерениями “МобильныйСотрудник” и “Задача”, ресурсы: “СрокИсполнения” и “Выполнено”.  Передача и сохранение измененных данных выполняется достаточно просто:

модуль fbaПодпискаНаСобытия

Функция СохранитьВнешнююТаблицу(МобильноеПриложение,МобильныйКомпьютер,МобильныйСотрудник,ИмяТаблицы,ВнешняяТаблица) Экспорт

	ДанныеСохранены = Истина;
	Если СокрЛП(МобильноеПриложение.Код) = "SAMPLE_APP_TASKS" Тогда
		Если ИмяТаблицы = "Задачи" Тогда
			fbaДемоСервер.СохранитьИзмененияЗадачПоСотруднику(МобильныйСотрудник,ВнешняяТаблица);
		КонецЕсли;
	КонецЕсли; 
	Возврат ДанныеСохранены;

КонецФункции 

Процедура ПередОтправкойВнешнейТаблицы(МобильноеПриложение,МобильныйКомпьютер,МобильныйСотрудник,ИмяТаблицы,ВнешняяТаблица, Отказ) Экспорт

Если СокрЛП(МобильноеПриложение.Код) = "SAMPLE_APP_TASKS" Тогда

		Если ИмяТаблицы = "Задачи" Тогда
			fbaДемоСервер.ЗаполнитьТаблицуЗадачПоСотруднику(МобильныйСотрудник,ВнешняяТаблица);
		КонецЕсли;

	КонецЕсли; 

КонецПроцедуры

модуль fbaДемоСервер:

//Заполнить таблицу задач по мобильному сотруднику (при передаче мобильному приложению)
//
Процедура ЗаполнитьТаблицуЗадачПоСотруднику(МобильныйСотрудник,ВнешняяТаблица) Экспорт

	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	ЗадачиМобильномуСотруднику.Задача,
	               |	ЗадачиМобильномуСотруднику.СрокИсполнения
	               |ИЗ
	               |	РегистрСведений.ЗадачиМобильномуСотруднику КАК ЗадачиМобильномуСотруднику
	               |ГДЕ
	               |	ЗадачиМобильномуСотруднику.МобильныйСотрудник = &МобильныйСотрудник
	               |	И НЕ ЗадачиМобильномуСотруднику.Выполнено";

	Запрос.УстановитьПараметр("МобильныйСотрудник", МобильныйСотрудник);

	Результат = Запрос.Выполнить();
	Выборка = Результат.Выбрать();

	Пока Выборка.Следующий() Цикл
		НоваяСтрока = ВнешняяТаблица.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяСтрока,Выборка);
	КонецЦикла;

КонецПроцедуры

//Сохранить полученные от мобильного приложения задачи
//
Процедура СохранитьИзмененияЗадачПоСотруднику(МобильныйСотрудник,ВнешняяТаблица) Экспорт

	Для каждого СтрокаТаблицы Из ВнешняяТаблица Цикл

		Запись = РегистрыСведений.ЗадачиМобильномуСотруднику.СоздатьМенеджерЗаписи();
		ЗаполнитьЗначенияСвойств(Запись,СтрокаТаблицы);
		Запись.Активность = Истина;
		Запись.МобильныйСотрудник = МобильныйСотрудник;
		Запись.Записать(Истина);

	КонецЦикла; 

КонецПроцедуры
Похожие записи: