Платформа 3V/Формы/Выражения: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
 
(не показаны 4 промежуточные версии 2 участников)
Строка 6: Строка 6:
 
   ...
 
   ...
 
   "expressions": [
 
   "expressions": [
      "id": 1,
+
    {
      "expression": "...",
+
      "id": 1,
      "returnFirstParameterValue": false,
+
      "expression": "...",
      "parameters": [
+
      "returnFirstParameterValue": false,
      ....
+
      "parameters": [
      ],
+
        ...
      "comment": null
+
        ],
   ],
+
      "comment": null
 +
    }
 +
   ]
 
   ...
 
   ...
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
  
== Описание свойств выражений ==
+
=== Описание свойств выражений ===
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
Строка 27: Строка 29:
 
| [[Платформа_3V/Расчет_выражений|'''expression''']]|| Расчетное выражение, формируемое с помощью определенного синтаксиса (может иметь пустое значение: "expression": null)
 
| [[Платформа_3V/Расчет_выражений|'''expression''']]|| Расчетное выражение, формируемое с помощью определенного синтаксиса (может иметь пустое значение: "expression": null)
 
|-
 
|-
| returnFirstParameterValue|| Флаг получения в выражении отметки первого параметра в блоке "parameters" без учета самого выражения, написанного в "expression"
+
| returnFirstParameterValue|| Флаг получения в выражении отметки первого параметра в блоке "parameters" без учета самого выражения, написанного в "expression" (при значении true, в поле expression можно указать пустое значение: "expression": null)
 
|-
 
|-
 
| [[Платформа 3V/Формы/Выражения|'''parameters''']]|| Перечень параметров (операндов), используемых для расчета выражения. Возможные типы параметров см.ниже
 
| [[Платформа 3V/Формы/Выражения|'''parameters''']]|| Перечень параметров (операндов), используемых для расчета выражения. Возможные типы параметров см.ниже
Строка 34: Строка 36:
 
|}
 
|}
  
== Виды параметров выражения ==
+
==Параметры выражения==
{| class="wikitable"
+
 
|-
+
Операнды или параметры выражения (блок parameters), используемые в расчете выражения указываются в квадратных скобках: [1].
! discriminator !! Описание
+
 
|-
+
Виды параметров и ссылки на детальную настройку каждого вида в JSON описана на странице [[Платформа 3V/Формы/Параметры выражений и отчетов|'''Параметры выражений и отчетов''']]
| EntryExpressionUiSourceParameterDto || Значение элемента управления серверной карточки
 
|-
 
| EntryExpressionDictionarySourceParameterDto || Элементы источника - справочника серверной карточки
 
|-
 
| EntryExpressionConstantParameterDto|| Постоянное значение (единичное или коллекция значений)
 
|-
 
| EntryExpressionByDictionaryRequestDto|| Элементы справочника - объекта репозитория, который не является источником серверной карточки
 
|-
 
| EntryExpressionByExpressionDto|| Значение выражения
 
|-
 
| EntryExpressionConditionParameterDto|| Значение выражения при выполнении определенных [[Платформа 3V/Формы/Выражения|'''условий''']]
 
|-
 
| EntryExpressionCardParameterDto|| Значение параметра серверной карточки
 
|-
 
| EntryExpressionDictionaryElementCountParameterDto|| ???
 
|-
 
| EntryExpressionDictionaryElementCountByDictionaryRequestParameterDto|| ???
 
|-
 
| EntryExpressionPivotCheckedParameterDto|| ???
 
|-
 
| EntryExpressionPivotParamParameterDto|| ???
 
|-
 
| EntryExpressionPivotFocusedCellDictionarySelectionDto|| ???
 
|-
 
| EntryExpressionPivotFocusedCellColumnValueDto|| ???
 
|-
 
| EntryExpressionCurrentDateDto|| ???
 
|-
 
| EntryExpressionBusinessLogicApiScalarDto|| ???
 
|-
 
| EntryExpressionCalendarByDateDto|| ???
 
  
|-
+
=== Пример выражения с параметром ===
| EntryExpressionFormatDateParameterDto|| ???
+
<syntaxhighlight lang="JSON" line>
|-
+
{
| EntryExpressionJsonQueryParameterDto|| ???
+
  "id": 1,
|-
+
  "expression": "if([1]>0, true, false)",
| EntryExpressionDictionaryDataFilterByIndicatorParameterDto|| ???
+
  "returnFirstParameterValue": false,
|-
+
  "parameters": [
| EntryExpressionGetDictionaryJsonModelParameterDto|| ???
+
      {
|-
+
        "uiSourceId": 123,
| EntryExpressionCallbackParameterDto|| ???
+
        "id": 1,
|}
+
        "discriminator": "EntryExpressionUiSourceParameter"
 +
      }
 +
  ],
 +
    "comment": null
 +
}
 +
</syntaxhighlight>

Текущая версия на 14:48, 18 августа 2022

Расчеты в серверной карточке, выполняемые на основании источников и элементов управления серверной карточки, объектов репозитория и прочего описываются в блоке expressions Расчеты могут происходить по вызову действий, могут быть связанны с определенными элементами управления карточки, а также использоваться для фильтраций внутри карточки

 1 {
 2   ...
 3   "expressions": [
 4      { 
 5        "id": 1,
 6        "expression": "...",
 7        "returnFirstParameterValue": false,
 8        "parameters": [
 9         ...
10         ],
11        "comment": null
12      }
13   ]
14   ...
15 }

Описание свойств выражений

Свойство Описание
id Идентификатор выражения
expression Расчетное выражение, формируемое с помощью определенного синтаксиса (может иметь пустое значение: "expression": null)
returnFirstParameterValue Флаг получения в выражении отметки первого параметра в блоке "parameters" без учета самого выражения, написанного в "expression" (при значении true, в поле expression можно указать пустое значение: "expression": null)
parameters Перечень параметров (операндов), используемых для расчета выражения. Возможные типы параметров см.ниже
comment Комментарий для описания выполняемого выражения

Параметры выражения

Операнды или параметры выражения (блок parameters), используемые в расчете выражения указываются в квадратных скобках: [1].

Виды параметров и ссылки на детальную настройку каждого вида в JSON описана на странице Параметры выражений и отчетов

Пример выражения с параметром

 1 {
 2    "id": 1,
 3    "expression": "if([1]>0, true, false)",
 4    "returnFirstParameterValue": false,
 5    "parameters": [
 6        {
 7         "uiSourceId": 123,
 8         "id": 1,
 9         "discriminator": "EntryExpressionUiSourceParameter"
10        }
11    ],
12     "comment": null
13 }