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

• Права доступа пользователя. Если пользователь не имеет прав на выполнение какого-то действия и (или) на просмотр какой-либо информации, соответствующие команды автоматически исключаются платформой из интерфейса системы. Отметим очень важный момент: в «Управляемом приложении» появилась возможность настройки прав просмотра и редактирования для отдельных реквизитов объектов конфигурации. Реквизиты, которые пользователь не имеет права редактировать, выводятся на формы в режиме «только чтение», а которые пользователь не может даже просматривать, автоматически исключаются из состава всех форм конфигурации.

• Функциональные опции. Это новый механизм платформы, который появился в «Управляемом приложении». Механизм функциональных опций позволяет разработчику описать зависимость между элементами интерфейса и данными информационной базы. В соответствии с этими правилами платформа автоматически исключит из интерфейса команды, которые оказались лишними (более подробно механизм функциональных опций будет рассмотрен в следующей статье нашего цикла). Например, если в конфигурации описана функциональная опция «Валютный учет», а в информационной базе отключена возможность учета в разрезе валюты, все связанные с механизмом валютного учета элементы и команды будут автоматически исключены платформой из интерфейса системы.

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

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

Управляемый командный интерфейс

При обычном режиме работы «1С: Предприятия 8» доступный пользователю командный интерфейс (т. е. интерфейсные элементы, которые предоставляют доступ к тем или иным объектам информационной базы и действиям с ними) должен быть в явном виде задан разработчиком конфигурации. Пользователь видит только пункты меню, кнопки и гиперссылки, которые создал и разместил в конкретном месте конфигурации ее разработчик.

Командный интерфейс «Управляемого приложения» строится по совершенно другим принципам. Разработчик не конструирует элементы командного интерфейса, а описывает правила, по которым платформа должна будет автоматически формировать командный интерфейс в различных ситуациях. В словаре специалистов, работающих с «1С: Предприятием 8», появляется новый термин «команда». В отличие от некоторых других наших терминов, термин «команда» имеет общечеловеческий смысл и не нуждается в дополнительном толковании: это такое действие (или последовательность действий), которое система выполняет по явному указанию пользователя. Ближайшим аналогом команды в текущей версии «1С: Предприятия 8» можно с некоторой натяжкой считать действие – команда тоже может быть либо стандартной (предопределенное действие), либо созданной (действие, запрограммированное разработчиком).

Получение текстовой ссылки на объект

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

Управляемые формы

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

История работы пользователя

В «Управляемом приложении» используется новая технология – управляемые формы. Управляемые формы создаются по принципам декларативного описания: разработчик не «рисует» форму, а при помощи специального конструктора описывает логический состав формы и задает правила ее отображения. Но для платформы эти правила носят не обязательный, а рекомендательный характер, разработчик помогает платформе разобраться, как правильнее отобразить форму для пользователя.

Помимо декларативного описания между «обычными» и управляемыми существует ряд других важных отличий:

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

• Функциональность управляемой формы распределяется между клиентским приложением и сервером «1С: Предприятия 8», причем главную роль играет сервер. На нем выполняются подготовка формы, бизнес- логика формы и запись данных, переданных формой. Клиентское приложение выполняет только отрисовку формы и некоторые самые простые операции (например, арифметические вычисления в табличных частях, вывод сообщений и вопросов, обращение к локальным файлам на компьютере пользователя и т. п.).

Навигационные механизмы «Управляемого приложения»

Помимо глобальных изменений в интерфейсной модели «Управляемого приложения», следует упомянуть о появлении в платформе новых механизмов, призванных упростить и ускорить навигацию по объектам и функциям информационной системы: текстовых ссылках и истории работы пользователя.

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

С историей работы пользователя все просто: система хранит ссылки на последние объекты, созданные

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату