Платформа 3V/Формы/Выражения

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

Расчеты в серверной карточке, выполняемые на основании источников и элементов управления серверной карточки, объектов репозитория и прочего описываются в блоке 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"
parameters Перечень параметров (операндов), используемых для расчета выражения. Возможные типы параметров см.ниже
comment Комментарий для описания выполняемого выражения

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

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

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

 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": "EntryExpressionUiSourceParameterDto"
10        }
11    ],
12     "comment": null
13 }

Описание базовых свойств параметров

Свойство Описание
id Идентификатор параметра
allowMultipleValues Флаг об получении результата в виде коллекции значений (true/false)
discriminator Вид параметра (см.таблицу ниже)

Виды параметров выражения

discriminator Описание
EntryExpressionUiSourceParameterDto Значение элемента управления серверной карточки
EntryExpressionDictionarySourceParameterDto Элементы источника - справочника серверной карточки
EntryExpressionConstantParameterDto Постоянное значение (единичное или коллекция значений)
EntryExpressionByDictionaryRequestDto Коллекция элементов справочника - объекта репозитория, выбранная из некоторого атрибута справочника по заданному фильтру. Справочник может не являться источником серверной карточки
EntryExpressionByExpressionDto Значение другого выражения
EntryExpressionConditionParameterDto Значение выражения при выполнении определенных условий
EntryExpressionCardParameterDto Значение параметра серверной карточки
EntryExpressionDictionaryElementCountParameterDto Количество элементов справочника - источника формы, с учетом заданных фильтров
EntryExpressionDictionaryElementCountByDictionaryRequestParameterDto Количество элементов справочника - объекта репозитория, с учетом заданных фильтров
EntryExpressionPivotCheckedParameterDto Коллекция элементов справочника, которые выбраны флагом (чекбоксами) в отчете - источнике карточки
EntryExpressionPivotParamParameterDto Значение указанного параметра отчета - источника формы
EntryExpressionPivotFocusedCellDictionarySelectionDto Значение атрибута справочника, по отмеченной пользователем ячейке отчета
EntryExpressionPivotFocusedCellColumnValueDto Значение ячейки отчета по заданной отметке столбца и выбранной строке
EntryExpressionBusinessLogicApiScalarDto Значение, которое указанный метод API возвращает в качестве результата вычисления
EntryExpressionCalendarByDateDto Коллекция элементов календарного справочника, определенная на основании заданной даты и уровня календаря, по которому необходимо найти вхождение
EntryExpressionCurrentDateDto Значение текущей даты с учетом уровня календаря, до которого необходимо произвести округление (год, полугодие, квартал и прочее)
EntryExpressionFormatDateParameterDto Форматированное значение даты, которое приходит в качестве результата вычисления другого выражения
EntryExpressionDictionaryDataFilterByIndicatorParameterDto Коллекция элементов справочника, отфильтрованных с помощью показателя
EntryExpressionJsonQueryParameterDto Значение выражения, значение которого получается путем запроса JsonPath к указанному JSON-источнику
EntryExpressionGetDictionaryJsonModelParameterDto Значение атрибутов элемента справочника - объекта репозитория в формате JSON
EntryExpressionTokenAttributeParameterDto Значение атрибута токена пользователя