Документация

Документация по разработке bpm’online
PDF
Документация по разработке
Описание платформы
Виджеты итогов

Glossary Item Box

Общая информация

Виджеты итогов (элементы аналитики) предназначены для анализа статистических данных разделов. Для работы с аналитикой раздела необходимо перейти в представление аналитики необходимого раздела. Если же необходима работа с данными всех разделов приложения, то нужно перейти в раздел [Итоги].

Подробнее о виджетах итогов, реализованных в bpm'online, можно узнать из статьи "Аналитика раздела".

Структура данных для хранения информации по итогам

Раздел итогов представляет собой зависящий от прав пользователя набор элементов-вкладок. Механизм работы с итогами реализован с помощью клиентского менеджера итогов DashboardManager и элементов DashboardManagerItem, которые и представляют вкладки. За итоги в системе отвечает объект SysDashboard. Свойства объекта SysDashboard описаны в таблице 1.

Таблица 1. Описание свойств объекта SysDashboard

Название Заголовок Тип Описание
Caption Заголовок String Данная информация отображается в заголовке вкладки.
Position Позиция Number Если позиция не задана, элементы отображаются в алфавитном порядке заголовков.
Section Раздел Lookup Раздел системы.
ViewConfig Конфигурация отображения элементов (виджетов) Array

[{

    //Тип элемента (Terrasoft.ViewItemType).

     itemType: "4",

     // Название элемента.

     name: "SomeInvoiceChart",

     // Конфигурация отображения.

     layout: {

          columns: 4,

          rows: 4,

          colspan: 4,

          rowspan: 4

     }

 },

{...}]

Items Конфигурация модулей элементов (виджетов) JSON Object

{

   // Название элемента, для которого определяются настройки модуля.

   "SomeInvoiceChart": {

      // Название модуля для отображения элемента DashboardItem.

      “widgetType”: "Chart",

      // Параметры, необходимые для отображения данных конкретного элемента DashboardItem.

      “parameters”: {

         “caption”: "some caption",

       ...

      },

   },

   {...}

}

Реализация функциональности в режиме просмотра итогов

Иерархия классов, реализующих функциональность в режиме просмотра итогов, отображена на рис. 1.

Рис. 1. — Иерархия классов, реализующих функциональность в режиме просмотра итогов

scr_dashboards_runtime.png

Модуль SectionDashboardModule:

  • SectionDashboardBuilder — класс, инкапсулирующий в себе логику генерации представления и класса модели представления для модуля раздела итогов.
  • SectionDashboardsViewModel — класс модели представления раздела итогов.
  • SectionDashboardsModule — класс модуля раздела итогов.

Модуль DashboardModule:

  • DashboardViewConfig — класс, генерирующий конфигурацию представления для модуля страницы итогов.
  • BaseDashboardViewModel — базовый класс модели представления страницы итогов.
  • DashboardModule — класс, содержащий функциональность по работе с модулями итогов.

Модуль DashboardBuilder:

  • DashboardsViewConfig — класс, генерирующий конфигурацию представления для модуля итогов.
  • BaseDashboardsViewModel — базовый класс модели представления итогов.
  • DashboardBuilder — класс построения модуля итогов.

Реализация функциональности в режиме настройки итогов

Иерархия классов, реализующих функциональность в режиме настройки итогов, отображена на рис. 2.

Рис. 2. — Иерархия классов, реализующих функциональность в режиме настройки итогов

scr_dashboards_designtime.png

Модуль DashboardDesigner:

  • DashboardDesignerViewConfig — класс, генерирующий конфигурацию представления для модуля дизайнера итогов.
  • DashboardDesignerViewModel — класс модели представления дизайнера итогов.
  • DashboardDesigner — класс визуального модуля итогов.

Базовые классы, реализующие функциональность виджета

BaseWidgetViewModelClass — базовый класс модели представления виджетов. Для использования класса необходимо зарегистрировать в модуле такие сообщения:

  • GetHistoryState (publish; ptp);
  • ReplaceHistoryState (publish; broadcast);
  • HistoryStateChanged (subscribe; broadcast);
  • GetWidgetParameters (subscribe; ptp);
  • PushWidgetParameters (subscribe; ptp) — если используется получение параметров от модулей (useCustomParameterMethods = true).

BaseWidgetDesigner — базовая схема представления настройки виджетов. Основные методы:

  • getWidgetConfig() — возвращает объект актуальных настроек виджета.
  • getWidgetConfigMessage() — возвращает название сообщения получения настроек модуля виджета.
  • getWidgetModuleName() — возвращает название модуля виджета.
  • getWidgetRefreshMessage() — возвращает название сообщения обновления виджета.
  • getWidgetModulePropertiesTranslator() — возвращает объект соотношения свойств модуля виджета и модуля настройки виджета.

BaseAggregationWidgetDesigner — содержит методы для работы с агрегирующими колонками и типами агрегации.

DashboardEnums — содержит перечисление свойств, используемых в виджетах.

Terrasoft.DashboardEnums.WidgetType — содержит конфигурацию виджетов для режима просмотра (view) и режима настройки (design) итогов. Конфигурация определяется следующими свойствами: 

  • moduleName — название модуля виджета.
  • configurationMessage — название сообщения получения настроек модуля.
  • resultMessage — название сообщения для отдачи параметров настройки модуля дизайнера виджета.
  • stateConfig (stateObj) — название схемы дизайнера виджета.

Смотрите также

© Terrasoft 2002-2018.

Был ли данный материал полезен?

Как можно улучшить эту статью?