Основными особенностями являются:
1. Возможность настройки пользователем рабочего пространства;
2. Улучшенные возможности навигации;
3. Улучшенные возможности использования элементов интерфейса;
4. Удобство работы на устройствах с сенсорным экраном.
Основное окно приложения состоит из нескольких панелей и областей, каждая из которых имеет свое функциональное назначение. Взаимное расположение панелей может быть настроено разработчиком в конфигураторе и пользователем при работе с конфигурацией.
Возможна настройка следующих областей и панелей:
1. Панель разделов
Отображает список подсистем конфигурации верхнего уровня.
2. Панель функций текущего раздела
При щелчке мышью на конкретном разделе в панели функций текущего раздела выводятся команды выбранного раздела. На панели функций отображаются команды выбранного пользователем раздела.
3. Область системных команд
Область системных команд расположена в верхней части окна. В левой части области расположен значок доступа к главному меню, содержащему классические пункты Файл, Правка, Вид и т.д.
В правой части области расположены команды сохранения в файл, печати, предварительного просмотра, работы со ссылками, калькулятор, календарь и т.д.
4. Панель инструментов
На панели инструментов расположены кнопки открытия меню функций текущего раздела, доступа к избранному, просмотр истории, поиск данных.
5. Панель открытых
На этой панели выводится список открытых в настоящий момент окон. Формы рабочей области начальной страницы не отображаются как отдельные формы в панели открытых.
6. Панель истории
В интерфейсе «Такси» панель истории приближена к истории веб-браузера. Панель истории ускоряет доступ к использованным в последнее время объектам – открытым, отредактированным или добавленным справочникам, документам и т.д. Записи разделены по дням, а напротив каждой строчки указано время использования. В пределах одного дня записи упорядочены по времени доступа. Для пользователя хранится не более 400 записей в истории. Если число сохраненных элементов равно 400, то при добавлении новых элементов истории старые записи удаляются. Существует строка для поиска по истории. Щелкая по строкам истории, можно также переключаться между открытыми окнами приложения.
7. Панель избранного
В панели избранного сохраняются навигационные ссылки, которые пользователь специальным образом пометил как используемые для быстрого доступа. В избранном хранятся данные и команды.
Добавить объект в избранное можно при помощи щелчка мышью на значке с изображением звездочки.
Для настройки расположения областей предназначен «Редактор панелей», который может быть открыт из главного меню «Вид» — «Настройка панелей». При помощи мыши пользователь может перемещать значки, соответствующие разделам, располагая их в строках и колонках редактора панелей так, чтобы панели были видны в нужных частях экрана.
Особенности с точки зрения разработки
"Компактные" формы
Самое главное изменение - это возможность использовать сложные, насыщенные формы, которые существуют в прикладных решениях 8.2, без переработок. Сейчас проблема заключается в том, что при включении интерфейса Такси такие формы выглядят плохо. В первую очередь из-за того, что в новом интерфейсе увеличились шрифты и отступы. Например, у формы, приведённой ниже, оказывается полностью скрыта табличная часть:
Поэтому у управляемой формы было реализовано новое свойство «Вариант масштаба». Если в конфигураторе установить это свойство в значение «Компактный», форма автоматически будет выглядеть так:
На "техническом языке" это означает, что:
- В качестве базового шрифта используется системный шрифт "Шрифт диалогов и меню";
- Элементы формы имеют размеры, максимально соответствующие размерам элементов в интерфейсе версии 8.2;
- Расстояния между элементами формы максимально соответствуют расстояниям в интерфейсе версии 8.2;
- А табличный документ, диаграмма, диаграмма Ганта, дендрограмма, графическая схема и географическая схема отображаются без увеличения масштаба.
Такой вариант работы формы не является основным. "Компактные" формы диссонируют с остальным интерфейсом, и это лишь вспомогательное решение на переходный период. Однако оно позволяет с минимальными затратами перевести всё прикладное решение на новую платформу. А затем уже постепенно дорабатывать сложные формы для комфортной работы в новом интерфейсе.
"Компактностью" форм можно управлять не только для каждой формы отдельно, но и для всего прикладного решения в целом. Для этого у объекта «НастройкиКлиентскогоПриложения» реализовано аналогичное свойство, которое можно установить в значение «Компактный». Тогда все формы будут "компактными" кроме тех, для которых в явном виде указано, что они должны отображаться в обычном масштабе.
Отключение истории выбора
Другое изменение, которое оказалось востребованным и важным, это возможность отключения истории выбора в поле ввода. Есть целый ряд задач, когда пользователю совершенно не нужно (и даже вредно) видеть значения, которые он выбирал в поле ввода до этого. Например, когда необходимо выбирать и закрывать заказы покупателей. Естественно, в этом случае он должен видеть только те заказы, которые он не обрабатывал ранее. И показ истории выбора, в которой находятся уже обработанные и закрытые заказы, будет только мешать, и сбивать его с толка.
Поэтому у многих прикладных объектов, а также у реквизитов, измерений, ресурсов и др. объектов конфигурации реализовано новое свойство «ИсторияВыбораПриВводе», которое позволяет гибко управлять отображением истории выбора в различных ситуациях.
Программная настройка панелей
Следующее важное изменение - это возможность программного изменения состава и расположения панелей в основном окне клиентского приложения. Другими словами теперь можно программно настраивать рабочее пространство пользователя в зависимости от каких-либо факторов.
Например, в зависимости от его роли. Или в зависимости от разрешения экрана, на котором запускается 1С:Предприятие. Основной объект, с помощью которого выполняется настройка, это «НастройкиИнтерфейсаКлиентскогоПриложения». Он позволяет работать как с настройками, заданными в конфигураторе, разработчиком, так и с настройками, которые пользователь установил для себя в режиме 1С:Предприятие. В первом случае его нужно создать конструктором, а во втором случае его нужно прочитать из хранилища системных настроек.
Ниже приведён пример процедуры «ПриНачалеРаботыСистемы» и процедуры общего модуля, которые позволяют установить определенное расположение панелей в зависимости от размеров экрана, на котором запускается 1С:Предприятие.
Процедура ПриНачалеРаботыСистемы(Отказ)
// Определить размеры экрана.
Экраны = ПолучитьИнформациюЭкрановКлиента();
// Для примера допускаем, что экран один.
// Но если экранов несколько, нужно анализировать их все.
ВысотаЭкрана = Экраны[0].Высота;
ШиринаЭкрана = Экраны[0].Ширина;
// Если экран маленький, включить только панель инструментов.
// Если ...
НастройкаИнтерфейса.ВыполнитьНастройкуПанелей();
// КонецЕсли;
ОбновитьИнтерфейс();
КонецПроцедуры
Процедура ВыполнитьНастройкуПанелей() Экспорт
// Для примера будем менять настройки пользователя "не глядя" на то, что он себе настроил.
// Создать пустой объект настроек.
НастройкиИнтерфейса = Новый НастройкиИнтерфейсаКлиентскогоПриложения;
// С помощью пустого объекта настроек получить настройки состава, установленные в конфигураторе.
НастройкиСостава = НастройкиИнтерфейса.ПолучитьСостав();
// Очистить настройки состава.
НастройкиСостава.Верх.Очистить();
НастройкиСостава.Лево.Очистить();
НастройкиСостава.Низ.Очистить();
НастройкиСостава.Право.Очистить();
// Заполнить своими панелями.
// Для примера самый простой вариант: слева - панель инструментов.
ПанельИнструментов = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельИнструментов");
НастройкиСостава.Лево.Добавить(ПанельИнструментов);
// Загрузить настройки состава в пустой объект настроек.
НастройкиИнтерфейса.УстановитьСостав(НастройкиСостава);
// Положить объект настроек текущему пользователю в хранилище.
ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса);
// Если же хотим менять настройки, которые установил пользователь себе,
// тогда нужно прочитать его настройки из хранилища, и метод ПолучитьСостав()
// вернёт не то, что в конфигураторе, а то, что пользователь установил себе.
//
// НастройкиИнтерфейса = ХранилищеСистемныхНастроек.Загрузить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения");
// НастройкиСостава = НастройкиИнтерфейса.ПолучитьСостав();
// ... изменть настройки состава
// НастройкиИнтерфейса.УстановитьСостав(НастройкиСостава);
// ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиИнтерфейсаКлиентскогоПриложения", , НастройкиИнтерфейса);
Передача дополнительных параметров в открываемые формы
Теперь, в новом интерфейсе, открытие формы нового элемента может происходить автоматически. Поэтому к формам прикладных объектов добавлен новый стандартный параметр «ДополнительныеПараметры». В него из поля ввода автоматически передаются параметры выбора и связи параметров выбора, описанные как дополнительные (не связанные с отбором). Эти значения теперь тоже можно анализировать при создании нового элемента и открытии его формы.
Кроме этого «ДополнительныеПараметры» платформа передаёт из поля ввода не только в форму нового элемента, но и в форму выбора. Таким образом, если пользователь из поля ввода открывает форму выбора и уже из неё создаёт новый элемент, то платформа автоматически передаст «ДополнительныеПараметры» по всей этой цепочке в форму нового элемента.