Платформа 3V/Отчет/4. Настроить параметры: различия между версиями
G.kalin (обсуждение | вклад) (Новая страница: «{{DISPLAYTITLE:Параметры}} == Виды параметров == # Простой параметр SimpleValueParameterDto # Типизированный...») |
|||
(не показано 10 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Параметры}} | {{DISPLAYTITLE:Параметры}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
== Простой параметр (SimpleValueParameterDto) == | == Простой параметр (SimpleValueParameterDto) == | ||
Строка 82: | Строка 77: | ||
<syntaxhighlight lang="JSON" line> | <syntaxhighlight lang="JSON" line> | ||
{ | { | ||
− | |||
− | |||
− | |||
"options": { | "options": { | ||
"groupingOptions": null, | "groupingOptions": null, | ||
Строка 96: | Строка 88: | ||
"selection": null, | "selection": null, | ||
"hierarchyId": null | "hierarchyId": null | ||
+ | }, | ||
+ | "selectionFilter": { | ||
+ | "value": [ | ||
+ | 1 | ||
+ | ], | ||
+ | "skipIfValueNull": false, | ||
+ | "attributeId": null, | ||
+ | "attribute": { | ||
+ | "id": 1, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "conditionType": "AttributeInCollection", | ||
+ | "inversion": false, | ||
+ | "discriminator": "ValueConditionalDictionaryFilterDto" | ||
}, | }, | ||
"attributeValues": null, | "attributeValues": null, | ||
Строка 118: | Строка 124: | ||
|- | |- | ||
| attributeValues || Значения атрибута справочника, которые будут использоваться в качестве значений (вместо value) [[Платформа_3V/Отчет/PivotDto/DictionaryAttributeParameterValueDto|'''DictionaryAttributeParameterValueDto''']] | | attributeValues || Значения атрибута справочника, которые будут использоваться в качестве значений (вместо value) [[Платформа_3V/Отчет/PivotDto/DictionaryAttributeParameterValueDto|'''DictionaryAttributeParameterValueDto''']] | ||
+ | |- | ||
+ | | selectionFilter|| Фильтр, по которому будет определятся отметка справочника в параметре. | ||
|} | |} | ||
Свойства dictionaryId, sortingOptions, displayValueOptions являются устаревшими. | Свойства dictionaryId, sortingOptions, displayValueOptions являются устаревшими. | ||
</br> | </br> | ||
Остальные свойства '''DictionaryParameterDto''' такие же как в '''SimpleValueParameterDto'''. | Остальные свойства '''DictionaryParameterDto''' такие же как в '''SimpleValueParameterDto'''. | ||
+ | </br> | ||
+ | === Способы задания отметки для параметра на справочнике === | ||
+ | # Value или DefaultValue | ||
+ | # AttributeValues (Теперь устаревшее, т.к. появился фильтр, но поддержка остается) | ||
+ | # SelectionFilter | ||
+ | |||
+ | Приоритет отдается SelectionFilter, затем AttributeValues и в последнюю очередь Value и DefaultValue. | ||
+ | |||
+ | '''При открытии отмечать все элементы''' | ||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | "selectionFilter": { | ||
+ | "value": null, | ||
+ | "skipIfValueNull": false, | ||
+ | "attributeId": null, | ||
+ | "attribute": { | ||
+ | "id": 1, | ||
+ | "discriminator": "OwnAttributeDefinitionDto" | ||
+ | }, | ||
+ | "conditionType": "AllElements", | ||
+ | "inversion": false, | ||
+ | "discriminator": "ValueConditionalDictionaryFilterDto" | ||
+ | }, | ||
+ | </syntaxhighlight> | ||
== Вычислимый параметр == | == Вычислимый параметр == | ||
'''Вычислимый параметр''' - это параметр значение которых вычисляется по выражению. | '''Вычислимый параметр''' - это параметр значение которых вычисляется по выражению. | ||
− | #Вычисление значения параметра поддерживается только для [[Платформа_3V/Отчет/ | + | #Вычисление значения параметра поддерживается только для [[Платформа_3V/Отчет/Параметры#Простой параметр (SimpleValueParameterDto)|'''SimpleValueParameterDto''']]. |
#Выражение описывается в свойстве параметра DefaultValue или Value. | #Выражение описывается в свойстве параметра DefaultValue или Value. | ||
#Выражение '''ДОЛЖНО''' начинаться с символа '=', например "=1+2". | #Выражение '''ДОЛЖНО''' начинаться с символа '=', например "=1+2". | ||
− | #Тип данных параметра определяется по результату вычисления, поэтому нет смысла использовать [[Платформа_3V/Отчет/ | + | #Тип данных параметра определяется по результату вычисления, поэтому нет смысла использовать [[Платформа_3V/Отчет/Параметры#Типизированный параметр (TypedValueParameterDto)|'''TypedValueParameterDto''']]. |
'''Пример описания параметра с вычислением даты завтрашнего дня.''' | '''Пример описания параметра с вычислением даты завтрашнего дня.''' | ||
Строка 138: | Строка 169: | ||
"IsDisabled": true, | "IsDisabled": true, | ||
"defaultValue": "=Now()+1", | "defaultValue": "=Now()+1", | ||
+ | "discriminator": "SimpleValueParameterDto" | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | '''Пример описания параметра с вычислением даты неделю назад (даты от) и даты сегодня (дата до).'''<br> | ||
+ | |||
+ | '''''Дата от''''' | ||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | { | ||
+ | "id": 1, | ||
+ | "name": "Дата от", | ||
+ | "IsDisabled": true, | ||
+ | "defaultValue": "=Today()-7", | ||
+ | "discriminator": "SimpleValueParameterDto" | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | '''''Дата до''''' | ||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | { | ||
+ | "id": 1, | ||
+ | "name": "Дата до", | ||
+ | "IsDisabled": true, | ||
+ | "defaultValue": "=Today()", | ||
+ | "discriminator": "SimpleValueParameterDto" | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | Важно учесть, что при вычислении даты на сегодняшний день вышеуказанным способом автоматически определится время 00:00. То есть при выборе даты 10.01.2021 в параметре будет значение 10.01.2021 00:00:00. Для того, чтобы отобразить все данные за сегодняшний день, при этом не изменив дату, можно описать параметр следующим образом: | ||
+ | <syntaxhighlight lang="JSON" line> | ||
+ | { | ||
+ | "id": 1, | ||
+ | "name": "Дата до", | ||
+ | "IsDisabled": true, | ||
+ | "defaultValue": "=Today()+0.9999", | ||
"discriminator": "SimpleValueParameterDto" | "discriminator": "SimpleValueParameterDto" | ||
} | } |
Текущая версия на 11:37, 16 февраля 2022
Содержание
Простой параметр (SimpleValueParameterDto)
Простой параметр - это параметр значение которого задается константой.
1 {
2 "defaultValue": "Значение по умолчанию",
3 "value": "Значение",
4 "isMultiselect": false,
5 "isEmptyValuePossible": false,
6 "isDisableable": false,
7 "isDisabled": false,
8 "dataControlOptions": null,
9 "id": 1,
10 "name": "Простой параметр",
11 "discriminator": "SimpleValueParameterDto"
12 }
Свойство | Описание |
---|---|
id | Идентификатор параметра |
name | Наименование параметра |
isMultiselect | Признак, что параметр может иметь множественное значение |
isEmptyValuePossible | Признак, что параметр может иметь пустое значение |
isDisableable | Признак, что параметр может быть отключён |
IsDisabled | Признак, что параметр отключен |
DataControlOptions | Настройки элемента управления (контрола) параметром DataControlOptionsDto |
value | Значение параметра, если isMultiselect == true, то в значении может быть массив значений. |
defaultValue | Значение параметра по умолчанию |
Типизированный параметр (TypedValueParameterDto)
Типизированный параметр - это параметр значение которого задается типизированной константой.
1 {
2 "dataType": "String",
3 "defaultValue": "Значение по умолчанию",
4 "value": "Значение",
5 "isMultiselect": false,
6 "isEmptyValuePossible": false,
7 "isDisableable": false,
8 "isDisabled": false,
9 "dataControlOptions": null,
10 "id": 1,
11 "name": "Типизированный параметр",
12 "discriminator": "TypedValueParameterDto"
13 }
Ключевое отличие типизированного параметра от простого заключается в строгой типизации значения, если для простого параметра не важно что в значение будет: строка, число, дата, то для типизированного важно.
Свойство | Описание |
---|---|
dataType | Тип данных значений параметра |
Остальные свойства TypedValueParameterDto такие же как в SimpleValueParameterDto за исключением dataType.
Параметр на справочнике (DictionaryParameterDto)
Параметр на справочнике - это параметр значения которого берутся из атрибута справочника.
1 {
2 "options": {
3 "groupingOptions": null,
4 "groupingMethod": "Default",
5 "sortingOptions": null,
6 "rootElement": null,
7 "virtualElements": null,
8 "displayValueOptions": null,
9 "dictionaryId": 8237,
10 "filter": null,
11 "selection": null,
12 "hierarchyId": null
13 },
14 "selectionFilter": {
15 "value": [
16 1
17 ],
18 "skipIfValueNull": false,
19 "attributeId": null,
20 "attribute": {
21 "id": 1,
22 "discriminator": "OwnAttributeDefinitionDto"
23 },
24 "conditionType": "AttributeInCollection",
25 "inversion": false,
26 "discriminator": "ValueConditionalDictionaryFilterDto"
27 },
28 "attributeValues": null,
29 "defaultValue": [],
30 "value": null,
31 "isMultiselect": false,
32 "isEmptyValuePossible": true,
33 "isDisableable": false,
34 "isDisabled": false,
35 "dataControlOptions": null,
36 "id": 2,
37 "name": "Ремонты",
38 "discriminator": "DictionaryParameterDto"
39 }
Свойство | Описание |
---|---|
options | Настройки справочника для параметра DictionaryOptionsDto |
attributeValues | Значения атрибута справочника, которые будут использоваться в качестве значений (вместо value) DictionaryAttributeParameterValueDto |
selectionFilter | Фильтр, по которому будет определятся отметка справочника в параметре. |
Свойства dictionaryId, sortingOptions, displayValueOptions являются устаревшими.
Остальные свойства DictionaryParameterDto такие же как в SimpleValueParameterDto.
Способы задания отметки для параметра на справочнике
- Value или DefaultValue
- AttributeValues (Теперь устаревшее, т.к. появился фильтр, но поддержка остается)
- SelectionFilter
Приоритет отдается SelectionFilter, затем AttributeValues и в последнюю очередь Value и DefaultValue.
При открытии отмечать все элементы
1 "selectionFilter": {
2 "value": null,
3 "skipIfValueNull": false,
4 "attributeId": null,
5 "attribute": {
6 "id": 1,
7 "discriminator": "OwnAttributeDefinitionDto"
8 },
9 "conditionType": "AllElements",
10 "inversion": false,
11 "discriminator": "ValueConditionalDictionaryFilterDto"
12 },
Вычислимый параметр
Вычислимый параметр - это параметр значение которых вычисляется по выражению.
- Вычисление значения параметра поддерживается только для SimpleValueParameterDto.
- Выражение описывается в свойстве параметра DefaultValue или Value.
- Выражение ДОЛЖНО начинаться с символа '=', например "=1+2".
- Тип данных параметра определяется по результату вычисления, поэтому нет смысла использовать TypedValueParameterDto.
Пример описания параметра с вычислением даты завтрашнего дня.
1 {
2 "id": 1,
3 "name": "Завтра",
4 "IsDisabled": true,
5 "defaultValue": "=Now()+1",
6 "discriminator": "SimpleValueParameterDto"
7 }
Пример описания параметра с вычислением даты неделю назад (даты от) и даты сегодня (дата до).
Дата от
1 {
2 "id": 1,
3 "name": "Дата от",
4 "IsDisabled": true,
5 "defaultValue": "=Today()-7",
6 "discriminator": "SimpleValueParameterDto"
7 }
Дата до
1 {
2 "id": 1,
3 "name": "Дата до",
4 "IsDisabled": true,
5 "defaultValue": "=Today()",
6 "discriminator": "SimpleValueParameterDto"
7 }
Важно учесть, что при вычислении даты на сегодняшний день вышеуказанным способом автоматически определится время 00:00. То есть при выборе даты 10.01.2021 в параметре будет значение 10.01.2021 00:00:00. Для того, чтобы отобразить все данные за сегодняшний день, при этом не изменив дату, можно описать параметр следующим образом:
1 {
2 "id": 1,
3 "name": "Дата до",
4 "IsDisabled": true,
5 "defaultValue": "=Today()+0.9999",
6 "discriminator": "SimpleValueParameterDto"
7 }
Пример описания параметра с вычислением числа.
1 {
2 "id": 1,
3 "name": "Число",
4 "IsDisabled": true,
5 "defaultValue": "=1 + 2.3",
6 "discriminator": "SimpleValueParameterDto"
7 }
Пример описания параметра с вычислением строки.
1 {
2 "id": 1,
3 "name": "Строка",
4 "IsDisabled": true,
5 "defaultValue": "=('ab' + 'cd')",
6 "discriminator": "SimpleValueParameterDto"
7 }