Как решить проблему с двойным кликом в веб-клиенте 1С на iOS и настроить мобильный клиент без затрат

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

Разработка мобильных решений на платформе 1С:Предприятие часто сталкивается с аппаратными и программными ограничениями экосистемы Apple. При работе через мобильный веб-клиент в браузере Safari на iOS пользователи iPhone и iPad сталкиваются с неприятной особенностью: вместо открытия элемента по двойному тапу происходит стандартное системное масштабирование (zoom) страницы. Одиночный же клик лишь выделяет строку в таблице. В итоге пользователь может просматривать списки, но открыть конкретный документ или элемент справочника без физической клавиатуры становится невозможно.

В этой статье мы подробно разберем несколько практических способов решения проблемы обработки выбора в веб-клиенте, а также рассмотрим современные альтернативные методы сборки и установки полноценного мобильного клиента 1С на iOS без покупки дорогостоящей лицензии разработчика Apple Developer Enterprise Program и использования компьютеров Mac.

Способ 1. Использование свойства «ИспользованиеТекущейСтроки»

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

Для этого выполним следующие действия:

  1. Откроем конфигуратор и перейдем в форму, содержащую таблицу (динамический список или табличную часть).
  2. Выделим элемент формы типа Таблица.
  3. В панели свойств найдем параметр ИспользованиеТекущейСтроки.
  4. Установим значение этого свойства в Выбор (в некоторых версиях платформы значение Авто на мобильных устройствах автоматически трактуется как выбор).

Благодаря этой настройке, одиночное нажатие (тап) на строку таблицы на мобильном устройстве будет сразу инициировать событие выбора, что приведет к открытию формы элемента, минуя необходимость двойного клика.

Способ 2. Создание явной команды выбора (Кнопка «Открыть»)

Если автоматический выбор по одиночному клику неудобен для десктопных пользователей, мы можем создать альтернативный вариант интерфейса специально для мобильных сотрудников. Рассмотрим по шагам, как реализовать кнопку открытия текущей строки:

  1. В редакторе формы добавим новую команду, например, ОткрытьЭлемент.
  2. В свойствах команды установим свойство ИспользованиеТекущейСтроки в значение Использовать.
  3. Свяжем команду с кнопкой и разместим ее на командной панели таблицы. Кнопку можно сделать крупной и удобной для нажатия пальцем.
  4. Напишем простой обработчик для этой команды:

&НаКлиенте
Процедура ОткрытьЭлемент(Команда)
    ТекущаяСтрока = Элементы.Список.ТекущаяСтрока;
    Если ЗначениеЗаполнено(ТекущаяСтрока) Тогда
        ПоказатьЗначение(, ТекущаяСтрока);
    КонецЕсли;
КонецПроцедуры

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

Способ 3. Переход на технологию PWA (Progressive Web Apps)

Выясним причину, почему Safari перехватывает двойной тап. Это стандартный жест масштабирования браузера. Чтобы обойти это поведение на уровне операционной системы iOS, мы можем запустить веб-клиент 1С как прогрессивное веб-приложение (PWA).

Для этого пользователю достаточно выполнить простую инструкцию:

  1. Открыть ссылку на опубликованный веб-клиент 1С в браузере Safari на iPhone или iPad.
  2. Нажать на кнопку «Поделиться» (иконка квадрата со стрелкой вверх в меню браузера).
  3. Выбрать пункт «На экран "Домой"» (Add to Home Screen).
  4. Задать имя приложения и подтвердить добавление.

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

Способ 4. Сборка мобильного клиента без Mac через Облачный сервис 1С

Если работа в веб-клиенте все же кажется компромиссным решением, рассмотрим возможность установки полноценного мобильного клиента. Ранее для сборки приложения под iOS обязательно требовался компьютер Mac с установленной средой Xcode. Начиная с современных версий платформы 1С:Предприятие, эта проблема решена разработчиками фирмы «1С».

Мы можем воспользоваться официальным «Сервисом сборки и публикации мобильных приложений»:

  1. В конфигураторе или через меню «Функции для технического специалиста» в режиме предприятия запустим мастер сборки мобильных приложений.
  2. Платформа отправит конфигурацию в защищенное облако 1С, где на удаленных серверах macOS произойдет сборка готового пакета в формате .ipa.
  3. По завершении процесса мы сможем скачать готовый файл приложения без покупки собственного оборудования Mac.

Способ 5. Бесплатная установка мобильного клиента на iOS (Sideloading)

Самым большим препятствием для внедрения мобильного клиента на iOS является стоимость лицензии Apple Developer Enterprise Program ($299 в год) для закрытого распространения внутри компании. Однако для небольших команд (до 5–10 устройств) мы можем применить методы альтернативной установки (Sideloading) с помощью утилит AltStore или Sideloadly.

Рассмотрим алгоритм действий:

  1. Скачаем и установим программу Sideloadly или AltStore на рабочий компьютер под управлением Windows или macOS.
  2. Подключим iPhone пользователя к компьютеру по кабелю.
  3. В интерфейсе утилиты укажем собранный ранее .ipa файл мобильного клиента 1С.
  4. Введем персональный (бесплатный) Apple ID разработчика. Программа самостоятельно подпишет приложение этим идентификатором и установит его на телефон.
  5. На самом iPhone перейдем в Настройки — Основные — VPN и управление устройством, найдем наш Apple ID и нажмем кнопку «Доверять».
  6. Для работы приложения на iOS 16 и новее дополнительно потребуется зайти в Настройки — Конфиденциальность и безопасность, пролистать вниз, включить «Режим разработчика» и перезагрузить устройство.

Важное ограничение: При использовании бесплатного Apple ID приложение будет работать ровно 7 дней, после чего его лицензия истечет. Чтобы обойти это ограничение, утилита AltStore использует фоновое обновление по локальной Wi-Fi сети. Если компьютер с запущенным сервером AltServer и iPhone находятся в одной сети, приложение будет автоматически переподписываться и работать без ограничений по времени.

← На главную