Creatio development guide
PDF
Документация по разработке
Описание платформы
Это документация Creatio версии 7.13.0. Мы рекомендуем использовать новую версию документации.

Виджеты итогов

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-2019.

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

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