Платформа 3V/Отчет/5. Настроить представление, оформление отчета/Настроить стили (усл. форматирование)

Материал из 3v-wiki
Перейти к навигации Перейти к поиску

Настройка стиля для УФ

Для настройки условного форматирования необходимо настроить стиль:

"styles": [ ],
1 {
2       "id": 1,
3       "text": "color:#FFFFFF ;background-color:#4889e0;",
4       "format": null,
5       "dataControlOptions": null
6     }

Что можно сделать стилем:

"text": Описание
font-weight:bold жирный шрифт
font-size: 20px размер шрифта
text-align: center / right / left выравнивание текста по центру /по правому краю / по левому краю
color:rgb(31, 111, 216) цвет шрифта
background-color:##FFFFFF цвет фона
margin-left: 40px отступ слева от элемента
text-transform: lowercase / uppercase / capitalize нижний регистр / верхний регистр / Первый символ каждого слова в предложении будет заглавным. Остальные символы свой вид не меняют
text-decoration: underline / overline нижнее подчеркивание текста / верхнее подчеркивание текста
font-style: italic курсив
background: url(...) установка иконки. Иконку преобразовываем https://base64.guru/converter/encode/image/svg. Выбираем формат Data URL -- data:/content/type;base64 и полученную строку вставляем в скобки.
background: url(...;background-color: #F1F8FE!important) фона для ячейки, где установлена иконка
background: url(...;background-size: 35px 25px) размер иконки

Настройка условного форматирования

Атрибут справочника

"styleOptions":[ ],
 1  
 2 {
 3       "formulas": [
 4         {
 5           "dictionaryId": 196,
 6           "attribute": {
 7             "id": 25,
 8             "discriminator": "OwnAttributeDefinitionDto"
 9           },
10           "selectionOptions": null,
11           "calculateByDiffs": false,
12           "leftHeaderPlacementKind": "AnyElement",
13           "expression": "[1]=[1]",
14           "operands": [
15             {
16               "dictionaryId": 196,
17               "attribute": {
18                 "id": 1,
19                 "discriminator": "OwnAttributeDefinitionDto"
20               },
21               "attributeId": 25,
22               "code": null,
23               "id": 1,
24               "name": null,
25               "discriminator": "AttributeFormulaOperandDto"
26             }
27           ],
28           "code": null,
29           "id": 1,
30           "name": null,
31           "discriminator": "AttributeFormulaDto"
32         }
33       ],
34       "controlType": "Style",
35       "styleId": 7,
36       "discriminator": "FormulaStyleOptionsDto"
37     },


Элемент справочника

Пример: В боковике 3 справочника, необходимо задать УФ только для всех элементов первого справочника 196. Добавление виртуального показателя

"styleOptions":[ ],
 1  
 2 {
 3       "discriminator": "LeftHeaderStyleOptionsDto",
 4       "styleId": 5,
 5       "selections": [
 6         {
 7           "dictionaryId": 196,
 8           "filter": {
 9             "value": null,
10             "skipIfValueNull": false,
11             "attributeId": null,
12             "attribute": {
13               "id": 1,
14               "discriminator": "OwnAttributeDefinitionDto"
15             },
16             "conditionType": "AttributeInCollection",
17             "inversion": true,
18             "discriminator": "ValueConditionalDictionaryFilterDto"
19           }
20         },
21         {
22           "dictionaryId": 186,
23           "filter": {
24             "value": [
25               34
26             ],
27             "skipIfValueNull": false,
28             "attributeId": null,
29             "attribute": {
30               "id": 1,
31               "discriminator": "OwnAttributeDefinitionDto"
32             },
33             "conditionType": "AttributeInCollection",
34             "inversion": false,
35             "discriminator": "ValueConditionalDictionaryFilterDto"
36           }
37         },
38         {
39           "dictionaryId": 306,
40           "filter": {
41             "value": [
42               1
43             ],
44             "skipIfValueNull": false,
45             "attributeId": null,
46             "attribute": {
47               "id": 1,
48               "discriminator": "OwnAttributeDefinitionDto"
49             },
50             "conditionType": "AttributeInCollection",
51             "inversion": false,
52             "discriminator": "ValueConditionalDictionaryFilterDto"
53           }
54         }
55       ]
56     }

Группировочный элемент

"styleOptions":[ ],
1 {
2       "dictionaryId": 70,
3       "groupingAttributes": [
4         21,
5         22
6       ],
7       "styleId": 1,
8       "discriminator": "GroupingStyleOptionsDto"
9     }

Группировочный транзитивный атрибут

"styleOptions":[ ],
 1 {
 2       "dictionaryId": 1100,
 3       "groupingAttributes": [
 4         46
 5       ],
 6       "groupingAttributesDefinitions": [
 7         {
 8           "innerAttribute": {
 9             "id": 21,
10             "discriminator": "OwnAttributeDefinitionDto"
11           },
12           "id": 46,
13           "discriminator": "TransitiveAttributeDefinitionDto"
14         }
15       ],
16       "styleId": 101,
17       "discriminator": "GroupingStyleOptionsDto"
18     }

Виртуальный элемент

"styleOptions":[ ],
1  
2 {
3       "dictionaryId": 362,
4       "styleId": 1,
5       "discriminator": "VirtualStyleOptionsDto"
6     }

Показатель

"styleOptions":[ ],
 1  
 2 {
 3       "formulas": [
 4         {
 5           "indicatorId": 432,
 6           "dictionaries": [
 7             {
 8               "groupingOptions": null,
 9               "groupingMethod": "Default",
10               "sortingOptions": null,
11               "rootElement": null,
12               "virtualElements": [],
13               "displayValueOptions": null,
14               "displayAttribute": null,
15               "dictionaryId": 391,
16               "filter": {
17                 "value": [
18                   5
19                 ],
20                 "skipIfValueNull": false,
21                 "attributeId": null,
22                 "attribute": {
23                   "id": 1,
24                   "discriminator": "OwnAttributeDefinitionDto"
25                 },
26                 "conditionType": "AttributeInCollection",
27                 "inversion": false,
28                 "discriminator": "ValueConditionalDictionaryFilterDto"
29               },
30               "selection": null,
31               "hierarchyId": null,
32               "limit": null
33             }
34           ],
35           "calculateByDiffs": false,
36           "leftHeaderPlacementKind": "AnyElement",
37           "expression": "[1]=0 or isnull ([1]) ",
38           "operands": [
39             {
40               "indicatorId": 432,
41               "dictionaries": [
42                 {
43                   "groupingOptions": null,
44                   "groupingMethod": "Default",
45                   "sortingOptions": null,
46                   "rootElement": null,
47                   "virtualElements": [],
48                   "displayValueOptions": null,
49                   "displayAttribute": null,
50                   "dictionaryId": 391,
51                   "filter": {
52                     "value": [
53                       5
54                     ],
55                     "skipIfValueNull": false,
56                     "attributeId": null,
57                     "attribute": {
58                       "id": 1,
59                       "discriminator": "OwnAttributeDefinitionDto"
60                     },
61                     "conditionType": "AttributeInCollection",
62                     "inversion": false,
63                     "discriminator": "ValueConditionalDictionaryFilterDto"
64                   },
65                   "selection": null,
66                   "hierarchyId": null,
67                   "limit": null
68                 }
69               ],
70               "aggregationType": "None",
71               "code": null,
72               "id": 1,
73               "name": null,
74               "discriminator": "IndicatorFormulaOperandDto"
75             }
76           ],
77           "code": null,
78           "id": 1,
79           "name": null,
80           "discriminator": "IndicatorFormulaDto"
81         }
82       ],
83       "controlType": "Style",
84       "styleId": 3,
85       "discriminator": "FormulaStyleOptionsDto"
86     }