Платформа 3V/Показатель/Показатель на справочнике
< Платформа 3V | Показатель
Перейти к навигации
Перейти к поиску
Версия от 07:29, 14 сентября 2021; A.kazanceva (обсуждение | вклад) (A.kazanceva переименовал страницу Платформа 3V/Показатель/Создание показателя/Задания показателя с данными из справочников в Платформа 3V/Показатель/Как настроить показатель: Задания показателя с данными из справочников)
Содержание
Описание кейса
необходимо настроить показатель на основании таблицы справочника "Трудозатраты по задачам" (id=12), при этом в показатель необходимо вывести измерения, связанные с исходным справочником по транзитивным атрибутам.
Исходные данные
Справочники
"Трудозатраты по задачам" (id=12)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование трудозатраты | Текстовый | |
2 | 22 | author | Связанный со справочником "Пользователи" | |
3 | 29 | issue | Связанный со справочником "Задачи" | |
4 | 33 | startDateId | Числовой | Идентификатор календаря уровня Месяц, для связи с измерением Календарь |
5 | 34 | timeSpentInHours | Дробный | Факт в показателе |
"Пользователи" (id=9)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование | Текстовый | |
2 | 24 | ФИО сотрудника | Связанный со справочником "Сотрудники" |
"Задачи" (id=11)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование | Текстовый | |
2 | 31 | project | Связанный со справочником "Проекты из Jira" |
"Проекты из Jira" (id=10)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование | Текстовый | |
2 | 25 | Связь с проектами | Связанный со справочником "Проекты" |
"Сотрудники" (id=19)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование | Текстовый | |
2 | 40 | Связь с пользователями Jira | Связанный со справочником "Пользователи" |
"Проекты" (id=504)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 2 | Наименование | Текстовый | |
2 | 20 | Производственный проект в Jira | Связанный со справочником "Проекты в Jira" |
"Календарь" (id=467)
№ | Идентификатор | Наименование атрибута | Тип | Назначение |
---|---|---|---|---|
1 | 1 | Идентификатор | Числовой | |
2 | 24 | Наименование | Текстовый |
Настройка показателя
На данный момент всю настройку возможно произвести только через json показателя, до реализации интерфейсов. Ниже приведены два варианта настройки, где
Поле JSON | Описание |
---|---|
virtualTable | задается идентификатор исходного справочника и его атрибуты по которым будет настроена связь измерений показателя |
factColumnId | задать порядок атрибута - факта из описания атрибутов блока virtualTable |
aggregationType | задать при необходимости тип агрегации или оставить NONE |
indicatorDictionariesexpressions | задать маппинг атрибутов исходного справочника с измерениями |
mappings.attributeId | на момент настройки в релизе 0.36.0, указанные значения в данном поле не влияют на результат настройки. |
Вариант 1: исходный справочник с данными является измерением показателя
1
2 {
3 "virtualTable": {
4 "dictionaryId": 12, //идентификатор исходного справочника
5 "attributes": [
6 {
7 "definition": {
8 "discriminator": "OwnAttributeDefinitionDto",
9 "id": 34 //идентификатор атрибута в качестве факта показателя, columnId=0
10 },
11 "dataType": "Double"
12 },
13 {
14 "definition": {
15 "innerAttribute": {
16 "discriminator": "OwnAttributeDefinitionDto",
17 "id": 24 //идентификатор атрибута "ФИО сотрудника" в справочнике "Пользователи" (id=9)
18 },
19 "discriminator": "TransitiveAttributeDefinitionDto",
20 "id": 22 //идентификатор транзитивного атрибута author в справочнике "Трудозатраты по задачам" (id=12), columnId=1
21 },
22 "dataType": "Integer"
23 },
24 {
25 "definition": {
26 "discriminator": "OwnAttributeDefinitionDto",
27 "id": 1 //идентификатор справочника "Трудозатраты по задачам" (id=12) , columnId=2
28 },
29 "dataType": "Integer"
30 },
31 {
32 "definition": {
33 "discriminator": "OwnAttributeDefinitionDto",
34 "id": 33 //идентификатор атрибута startDateId в справочнике "Трудозатраты по задачам" (id=12) , columnId=3
35 },
36 "dataType": "Integer"
37 },
38 {
39 "definition": {
40 "innerAttribute": {
41 "innerAttribute": {
42 "discriminator": "OwnAttributeDefinitionDto",
43 "id": 25 //идентификатор атрибута "Связь с проектами" в справочнике "Проекты из Jira" (id=10)
44 },
45 "discriminator": "TransitiveAttributeDefinitionDto",
46 "id": 31 //идентификатор транзитивного атрибута project в справочнике "Задачи" (id=11)
47 },
48 "discriminator": "TransitiveAttributeDefinitionDto",
49 "id": 29 //идентификатор транзитивного атрибута issue в справочнике "Трудозатраты по задачам" (id=12) , columnId=4
50 },
51 "dataType": "Integer"
52 }
53 ]
54 },
55 "factColumnId": 0,
56 "aggregationType": "None",
57 "discriminator": "DictionaryIndicatorDto",
58 "isReadonly": false,
59 "isCached": false,
60 "isDataSourceExternal": false,
61 "indicatorDictionaries": [
62 {
63 "mappings": [
64 {
65 "attributeId": 1,
66 "columnId": 2
67 }
68 ],
69 "discriminator": "DataIndicatorDictionaryDto",
70 "dictionaryId": 12 // справочник "Трудозатраты по задачам" (id=12)
71 },
72 {
73 "mappings": [
74 {
75 "attributeId": 1,
76 "columnId": 3
77 }
78 ],
79 "discriminator": "DataIndicatorDictionaryDto",
80 "dictionaryId": 467 // справочник "Календарь" (id=467)
81 },
82 {
83 "mappings": [
84 {
85 "attributeId": 40, // атрибут "Связь с пользователями Jira" в справочнике "Сотрудники" (id=19)
86 "columnId": 1
87 }
88 ],
89 "discriminator": "DataIndicatorDictionaryDto",
90 "dictionaryId": 19 // справочник "Сотрудники" (id=19)
91 },
92 {
93 "mappings": [
94 {
95 "attributeId": 20, // атрибут "Производственный проект в Jira" в справочнике "Проекты" (id=504)
96 "columnId": 4
97 }
98 ],
99 "discriminator": "DataIndicatorDictionaryDto",
100 "dictionaryId": 504 // справочник "Проекты" (id=504)
101 }
102 ],
103 "factOptions": [],
104 "isAccessRightsEnabled": false,
105 "code": "Ind_Tab_Issue_Work_Logs",
106 "id": 887,
107 "name": "Показатель на справочнике Трудозатрат"
108 }
Вариант 2: без исходного справочника в качестве измерения показателя, агрегация данных
1
2 {
3 "virtualTable": {
4 "dictionaryId": 12,
5 "attributes": [
6 {
7 "definition": {
8 "discriminator": "OwnAttributeDefinitionDto",
9 "id": 34
10 },
11 "dataType": "Double"
12 },
13 {
14 "definition": {
15 "innerAttribute": {
16 "discriminator": "OwnAttributeDefinitionDto",
17 "id": 24
18 },
19 "discriminator": "TransitiveAttributeDefinitionDto",
20 "id": 22
21 },
22 "dataType": "Integer"
23 },
24 {
25 "definition": {
26 "discriminator": "OwnAttributeDefinitionDto",
27 "id": 33
28 },
29 "dataType": "Integer"
30 },
31 {
32 "definition": {
33 "innerAttribute": {
34 "innerAttribute": {
35 "discriminator": "OwnAttributeDefinitionDto",
36 "id": 25
37 },
38 "discriminator": "TransitiveAttributeDefinitionDto",
39 "id": 31
40 },
41 "discriminator": "TransitiveAttributeDefinitionDto",
42 "id": 29
43 },
44 "dataType": "Integer"
45 }
46 ]
47 },
48 "factColumnId": 0,
49 "aggregationType": "Sum",
50 "discriminator": "DictionaryIndicatorDto",
51 "isReadonly": false,
52 "isCached": false,
53 "isDataSourceExternal": false,
54 "indicatorDictionaries": [
55 {
56 "mappings": [
57 {
58 "attributeId": 1,
59 "columnId": 2
60 }
61 ],
62 "discriminator": "DataIndicatorDictionaryDto",
63 "dictionaryId": 467
64 },
65 {
66 "mappings": [
67 {
68 "attributeId": 40,
69 "columnId": 1
70 }
71 ],
72 "discriminator": "DataIndicatorDictionaryDto",
73 "dictionaryId": 19
74 },
75 {
76 "mappings": [
77 {
78 "attributeId": 20,
79 "columnId": 3
80 }
81 ],
82 "discriminator": "DataIndicatorDictionaryDto",
83 "dictionaryId": 504
84 }
85 ],
86 "factOptions": [],
87 "isAccessRightsEnabled": false,
88 "code": "Ind_Tab_Issue_Work_Logs_sum",
89 "id": 889,
90 "name": "Показатель на справочнике Трудозатрат (сумма по факту)"
91 }