Книга: Разработка интерфейса прикладных решений на платформе "1С:Предприятие 8"
Назад: Поведение таблиц при сжатии по горизонтали
Дальше: Использование текущей строки таблицы

Сворачивание элементов форм по важности

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

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

Поэтому при разработке форм фиксированную ширину элементов лучше не использовать (свойство Ширина должно быть равно нулю, а свойство АвтоМаксимальнаяШирина – установлено).

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

Например, в редакторе формы документа РасходТовара мы видим, что реквизиты документа помещены в две группы с вертикальной группировкой: ЛеваяКолонка и ПраваяКолонка. В свою очередь, эти две группы объединены родительской группой Шапка. Тип группировки у этой группы не определен, что трактуется как значение по умолчанию – Горизонтальная если возможно (см. рис. 5.6).

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

Рис. 5.6. Форма документа «Расход товара» в редакторе формы

Но поскольку мобильные устройства значительно ограничены по ширине, то на них левая и правая колонка реквизитов будут располагаться вертикально друг под другом. То есть, поскольку горизонтальная группировка элементов невозможна, она превращается в вертикальную (рис. 5.7).

Рис. 5.7. Форма документа «Расход товара»

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

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

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

Продемонстрируем вышесказанное на примере.

Установим свойство ВажностьПриОтображении у поля Организация формы документа РасходТовара в значение Низкая. У всех остальных элементов формы ВажностьПриОтображении стандартно установлена в Авто. У самой формы свойство СворачиваниеЭлементовПоВажности также принимает значение Авто. Это значит, что сворачивание элементов формы по важности используется.

Обновим конфигурацию базы данных (F7) и опубликуем конфигурацию на веб-сервере. После этого запустим наше демонстрационное приложение на планшете и откроем форму документа Продажа (РасходТовара).

Мы видим, что вся группа реквизитов, относящихся к группе ЛеваяКолонка (Номер, Дата, Организация, Покупатель, Склад, см. рис. 5.6) показана в свернутом виде. Заголовок этой группы формируется перечислением через запятую заголовков всех элементов, входящих в свертываемую группу. Мы можем раскрыть ее на отдельном экране планшета, нажав на заголовок группы или на специальный значок справа от заголовка (рис. 5.8).

Рис. 5.8. Форма документа «Расход товара»

Так произошло потому, что группе формы ЛеваяКолонка стандартно присвоена важность Авто при отображении. В этом случае группа имеет самую высокую важность из всех входящих в нее элементов, то есть в результате важность у группы Низкая, как и у поля формы Организация, входящего в группу. Таким образом, и у всех остальных элементов группы, имеющих важность Авто , она становится Низкая. А поскольку поля группы занимают более трех строк формы, вся группа сворачивается.

Теперь вернем свойство ВажностьПриОтображении у поля формы Организация в значение Авто. А у группы формы ПраваяКолонка свойство ВажностьПриОтображении установим в значение Низкая. В результате вся группа целиком будет отображена в свернутом виде с заголовком в виде перечня входящих в нее элементов: «Вид цен, Валюта взаиморасчетов» (рис. 5.9).

Рис. 5.9. Форма документа «Расход товара»

Назад: Поведение таблиц при сжатии по горизонтали
Дальше: Использование текущей строки таблицы