Сегодня хотелось бы поговорить о том, как использовать мобильную платформу 1С, и какие возможности в ней реализованы для оптимизации работы сотрудников.
Но, во-первых, что такое мобильная платформа 1С? Это специальное приложение для смартфонов, с помощью которого можно автоматизировать работу некоторых специалистов. Например, приложение актуально для курьеров, работающих в компаниях, где интегрирована программа 1С. У них нет постоянного доступа к платформе, установленной на компьютере, но они имеют возможность использовать её с помощью мобильного устройства.
Давайте разберём для примера работу курьера, которому необходимо посетить клиентов в определённой последовательности (по маршрутному листу).
Координаты на карте
Мобильное приложение позволяет визуально обобщить все точки, которые необходимо посетить. Точки координат отображаются на карте после синхронизации с центральной базой.
#Если МобильноеПриложениеКлиент Тогда
КоординатыМеста = Новый ГеографическиеКоординаты(Данные.Широта, Данные.Долгота);
ПоказатьНаКарте(КоординатыМеста);
#КонецЕсли
Если требуется отображать точки разными цветами и создавать маршрут между ними, используется API Яндекс или Google-карт. Когда загружается html-страница, карта выводится в специальный вид поля «Поле HTML документа».
Использование геоданных
Мобильная платформа 1С может применяться и для определения ближайшей точки в маршруте. Обычно курьер ориентируется на время доставки, а не создание более короткого маршрута, однако необходимость поиска ближайшей точки тоже может возникнуть. Чтобы сделать это, нужно просто определить местонахождение смартфона при помощи встроенных мобильных приложений.
#Если МобильноеПриложениеКлиент Тогда
ПоложениеОбъекта = СредстваГеопозиционирования. ПолучитьПоследнееМестоположение(Имя);
//Минимальное расстояние между курьером и клиентами
Ближайший = НайтиБлижайшего(ПоложениеОбъекта.Координаты);
Если Ближайший = Неопределено Тогда
Сообщить(«Заказ не найден!»);
Иначе
ОткрытьЗначение(Ближайший);
КонецЕсли;
#КонецЕсли
Создание контактов
Данная функция может быть полезна, если каждый день у курьера новые клиенты, и ему нужно позвонить ему (написать смс) до момента доставки. Тогда необходимо воспользоваться функцией создания контактов в контактной книге. Работает она так: при загрузке маршрутного листа на устройстве сохраняются контакты с именем клиента и номером его телефона. Используя мобильное приложение в течение всего дня, курьеру проще ориентироваться, с кем он уже контактировал.
&НаКлиенте
Процедура СоздатьКонтактыЗаказов()
#Если МобильноеПриложениеКлиент Тогда
//Работа с данными контакта
КонтактыМассив = ОбменМобильныеПереопределяемый. ПолучитьМассивКонтактов();
Для Каждого ЭлементКонтакт Из КонтактыМассив Цикл
КонтактДанные = Новый ДанныеКонтакта;
КонтактДанные.Имя = ЭлементКонтакт.НомерЗаказа;
КонтактДанные.Заметка = ЭлементКонтакт.Заметка;
Если ЭлементКонтакт.Телефон1 <> «» И ЭлементКонтакт.Телефон1 <> «0» Тогда
НовыйТелефон = Новый ЭлементДанныхКонтакта (ТипНомераТелефонаДанныхКонтакта.Рабочий, ЭлементКонтакт.Телефон1);
КонтактДанные.НомераТелефонов.Добавить(НовыйТелефон);
КонецЕсли;
Если ЭлементКонтакт.Телефон2 <> «» И ЭлементКонтакт.Телефон2 <> «0» Тогда
НовыйТелефон = Новый ЭлементДанныхКонтакта (ТипНомераТелефонаДанныхКонтакта.Домашний, ЭлементКонтакт.Телефон2);
КонтактДанные.НомераТелефонов.Добавить(НовыйТелефон);
КонецЕсли;
Менеджер = Новый МенеджерКонтактов;
ЛокальныеКонтакты = Менеджер. ПолучитьЛокальнуюУчетнуюЗаписьКонтактов();
ЗаписьКонтакт = Новый ДанныеКонтактаУчетнойЗаписи (КонтактДанные, ЛокальныеКонтакты);
Менеджер.ДобавитьКонтакт (ЗаписьКонтакт);
КонецЦикла;
#КонецЕсли
КонецПроцедуры
Смс-сообщения
Мобильная платформа 1С может использоваться и для отправки смс-сообщений. Это удобно не только для курьера, но и для клиентов. Можно создать несколько самых используемых шаблонов, которые оптимизируют временные затраты. СМС-сообщения отправляются из приложения, а шаблоны можно создать при помощи стандартных инструментов мобильного устройства.
#Если МобильноеПриложениеКлиент Тогда
Сообщение = Новый SMSСообщение();
Сообщение.Текст = ТекстSMS;
Сообщение.Получатели.Добавить(НомерТелефона);
СредстваТелефонии.ПослатьSMS(Сообщение, Ложь);
#КонецЕсли
Также при работе с приложением может требоваться смс-авторизация. В такой ситуации разработчик может использовать обработчик смс-сообщений. Когда сообщение будет приходить на телефон, мобильное приложение 1С будет сохранять текст смс, из которого затем можно будет скопировать код доступа для обмена.
&НаКлиенте
Процедура ПарольПоSMS(Команда)
Пароль = ПарольПоSMSСервер();
Если Пароль = «Done» Тогда
#Если МобильноеПриложениеКлиент Тогда
Оповещение = Новый ОписаниеОповещения («ПолученоСМССообщение», ЭтаФорма);
СредстваТелефонии.ПодключитьОбработчикSMSСообщений (Оповещение);
#КонецЕсли
Иначе
Предупреждение(Пароль);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПолученоSMSСообщение(Сообщение, Параметры) Экспорт
#Если МобильноеПриложениеКлиент Тогда
Если Найти(Сообщение.Текст, «Текущий пароль: «) Тогда
НаборКонстант.ПарольЦентральнойБазы = Лев (СтрЗаменить (Сообщение.Текст, «Текущий пароль: «, «»), 6);
ЗаписатьКонстанты();
КонецЕсли;
Оповещение = Новый ОписаниеОповещения («ПолученоSMSСообщение», ЭтаФорма);
СредстваТелефонии.ОтключитьОбработчикSMSСообщений();
#КонецЕсли
КонецПроцедуры
Инициирование телефонных звонков
Для курьера очень удобно, когда используя мобильную платформу 1С, он может позвонить любому из клиентов. Чтобы сделать это, необходимо воспользоваться методами для работы со средствами телефонии.
#Если МобильноеПриложениеКлиент Тогда
Если СредстваТелефонии.ПоддерживаетсяНаборНомера() Тогда
СредстваТелефонии.НабратьНомер(Данные.Телефон, Ложь);
Иначе
Сообщить(«Набор номера не поддерживается!»);
КонецЕсли;
#КонецЕсли
Создание снимков
Иногда при работе с клиентами курьеру может потребоваться сделать какие-либо фотографии. Такая необходимость, например, может возникнуть, если заказ не устраивает клиента, он был выполнен не полностью или у товара имеются какие-либо повреждения. Для создания снимка используется камера мобильного устройства. Здесь мобильная платформа 1С имеет один недостаток: пока не реализована возможность выбора камеры, если на смартфоне их несколько, используется только основная камера.
Использование стороннего приложения
Курьеру может потребоваться заходить в Яндекс-навигатор из мобильного приложения 1С для создания маршрута к следующему пункту назначения. Тогда можно использовать метод «ЗапускПриложенияМобильногоУстройства». Получим следующий вариант:
#Если МобильноеПриложениеКлиент Тогда
НовыйЗапуск = Новый ЗапускПриложенияМобильногоУстройства();
НовыйЗапуск.Действие = «ru.yandex.yandexnavi.action.BUILD_ROUTE_ON_MAP»;
НовыйЗапуск.ДополнительныеДанные.Добавить («lat_to», Данные.Широта);
НовыйЗапуск.ДополнительныеДанные.Добавить («lon_to», Данные.Долгота);
НовыйЗапуск.Запустить(Ложь);
#КонецЕсли
Этот вариант подходит и для ситуаций, когда нужно открыть новое e-mail сообщение с заполненной адресной строкой из карточки клиента 1С, скажем, в приложении Gmail.
#Если МобильноеПриложениеКлиент Тогда
НовыйЗапуск = Новый ЗапускПриложенияМобильногоУстройства();
НовыйЗапуск.Действие = «android.intent.action.SEND»;
НовыйЗапуск.Данные = Данные.Почта;
НовыйЗапуск.Тип = «text/plain»;
НовыйЗапуск.Приложение = «com.google.android.gm»;
НовыйЗапуск.ИмяКласса = «com.google.android.gm.ComposeActivityGmail»;
НовыйЗапуск.Запустить(Истина);
#КонецЕсли
Мобильное приложение 1С, помимо оптимизации временных затрат курьера, имеет и другое важное достоинство. Благодаря этой платформе клиенты всегда получают самую свежую информацию. Курьер может позвонить клиенту, если возникли какие-то изменения, или написать сообщение заранее до своего приезда, что для клиентов бывает очень удобно.
В результате сотрудничающие с компанией заказчики понимают, что в ней все организовано на самом высоком уровне, а контроль заказов выполняется даже тогда, когда курьер не имеет доступа к стационарному компьютеру. Вот почему мобильная платформа 1С является не просто приятным дополнением для курьеров, а выполняет глобальные задачи, помогая компании зарекомендовать себя на рынке.
Если вы считаете, что мобильное приложение 1С может использоваться другими продуктивными способами, напишите об этом в комментариях.
Статья была подготовлена с использованием материала с сайта http://danila.org.ua/blog/.
жду
Добрый день!
Как найти манифест приложения Android чтобы запустить его методом ЗапускПриложенияМобильногоУстройства() ?