Как подключиться к доработанной базе 1С:УНФ с Android-устройства?

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

Работа с мобильными устройствами в экосистеме 1С — это не просто просмотр данных в браузере, а полноценное использование аппаратных возможностей смартфона и адаптированного интерфейса. В данной статье мы разберем, как подключить мобильное устройство на базе Android к сильно доработанной конфигурации 1С:Управление нашей фирмой, опубликованной на веб-сервере.

Выбор технологического решения: Мобильный клиент или Мобильное приложение

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

Мобильное приложение — это по сути отдельная база данных, которая живет на смартфоне. Она требует разработки механизмов обмена (через HTTP-сервисы или веб-сервисы), чтобы синхронизировать данные с основной базой. Для «сильно доработанной» УНФ это может стать кошмаром поддержки, так как придется дублировать бизнес-логику в мобильной конфигурации.

Мобильный клиент — это более современный и подходящий вариант для нашей задачи. Рассмотрим его преимущества:

  1. Он работает напрямую с основной базой в режиме онлайн.
  2. Вся логика выполняется на стороне сервера, а на Android передается только описание интерфейса.
  3. Вам не нужно настраивать сложные обмены данными.
  4. Вы можете использовать тот же программный код, что и в обычном тонком клиенте, с минимальными правками.

Подготовка веб-сервера и публикация базы

Поскольку наша база уже опубликована на веб-сервере (Apache или IIS), нам необходимо убедиться в правильности настроек. Разберем по шагам, что нужно проверить в Конфигураторе при повторной публикации:

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

Рассмотрим вопрос безопасности. Современные версии Android (начиная с версии 9.0) крайне неохотно работают с незащищенным протоколом HTTP. Для стабильной работы мы настоятельно рекомендуем настроить SSL-сертификат на вашем веб-сервере, чтобы обращение к базе шло через https://ваш-домен.ru/имя-базы. Это избавит вас от множества проблем с авторизацией и блокировками трафика мобильной операционной системой.

Адаптация интерфейса под мобильный экран

Одной из главных проблем, озвученных автором темы, является интерфейс. Действительно, стандартные формы 1С, рассчитанные на монитор 24 дюйма, будут непригодны для использования на 6-дюймовом смартфоне. Выясним, как 1С позволяет решить эту проблему.

Платформа 1С обладает механизмом автоматической генерации форм, но для доработанной УНФ этого недостаточно. Нам придется адаптировать формы вручную. В свойствах каждой формы существует флаг Использовать в мобильном клиенте. Однако лучше всего создавать отдельные формы для мобильных устройств или программно изменять видимость элементов.

Посмотрим на пример кода, который позволяет определить, что пользователь зашел с мобильного клиента, и выполнить соответствующую настройку интерфейса в процедуре ПриСозданииНаСервере:


&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Инфо = СистемаИнформации;
    Если Инфо.ТипПлатформы = ТипПлатформы.Android Или Инфо.ТипПлатформы = ТипПлатформы.iOS Тогда
        // Скрываем громоздкие элементы, оставляем только важное
        Элементы.ГруппаПодробно.Видимость = Ложь;
        Элементы.СписокТоваров.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет;
    КонецЕсли;
КонецПроцедуры

Установка платформы на Android и первый запуск

Теперь разберем, как именно подключиться со смартфона. Существует два основных способа:

  1. Использование приложения «1С:Запуск клиентских приложений». Это самый простой способ для тестирования. Вы скачиваете его из Google Play, добавляете адрес вашей публикации и логинитесь.
  2. Сборка собственного APK-файла. Это профессиональный путь. С помощью «Сборщика мобильных приложений» вы создаете индивидуальный установочный файл, в который уже вшит адрес вашей базы, иконка вашей компании и необходимые права доступа (камера, GPS).

Проанализируем ситуацию с версиями платформ. В обсуждении на форуме возник вопрос о несовпадении релизов. Важно понимать: мобильная платформа и платформа для ПК развиваются параллельно. Главное требование — чтобы версия мобильной платформы поддерживала работу с версией сервера 1С. Обычно рекомендуется использовать актуальные релизы обеих веток. Например, мобильная платформа версии 8.3.20 отлично работает с серверной частью 8.3.21 или 8.3.22.

Использование аппаратных возможностей смартфона

Почему использование мобильного клиента лучше браузера? Потому что мы получаем доступ к «железу» телефона прямо из кода 1С. Рассмотрим наиболее популярные сценарии для УНФ:

Сканирование штрих-кодов. Вы можете вызвать камеру телефона для считывания товара в документ «Приходная накладная» или «Заказ покупателя». Для этого используется программный интерфейс СредстваМультимедиа.


&НаКлиенте
Процедура СканироватьШтрихкод(Команда)
    СредстваМультимедиа.СканироватьШтрихкод(Новый ОписаниеОповещения("ЗавершитьСканирование", ЭтаФорма));
КонецПроцедуры

&НаКлиенте
Процедура ЗавершитьСканирование(Результат, ДополнительныеПараметры) Экспорт
    Если Результат <> Неопределено Тогда
        Штрихкод = Результат.Значение;
        // Дальнейшая логика поиска товара в базе
    КонецЕсли;
КонецПроцедуры

Геопозиционирование. Если ваши курьеры или менеджеры работают «в полях», вы можете записывать их координаты в момент проведения документов, используя СредстваГеопозиционирования.

Лицензирование мобильных рабочих мест

Важно помнить о финансовой стороне вопроса. Работа через мобильный клиент требует лицензий. Рассмотрим, как это работает:

Резюме

Подводя итог, можно утверждать: работа в доработанной 1С:УНФ на Android не только возможна, но и является стандартным сценарием развития системы. Основная работа ляжет на плечи программиста в части адаптации управляемых форм под маленькие экраны. Технически же подключение реализуется через публикацию мобильного клиента на веб-сервере и установку мобильной платформы на смартфоны сотрудников.

← На главную