Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Вычислимые поля: различия между версиями

Материал из Платформа Эра. Документации
Нет описания правки
Нет описания правки
Строка 7: Строка 7:
Коллекция вычислимых свойств задается в редакторе класса, на вкладке Properties, в группе calculated.
Коллекция вычислимых свойств задается в редакторе класса, на вкладке Properties, в группе calculated.


Параметры calculated-свойств, а также доступные параметры UI описаны в статье, [[Хранение данных. Классы. Поля и действия#Коллекция свойств calculated|посвященной свойствам]].
Все параметры calculated-свойств, а также доступные параметры UI описаны в статье, [[Хранение данных. Классы. Поля и действия#Коллекция свойств calculated|посвященной свойствам]].


Набор основных параметр у вычислимых свойств следующий:
{| class="wikitable mw-collapsible"
|+Параметры свойства
!Имя
!Значение по-умолчанию
!Комментарий
|-
|name
|
|Системное название. Используется для формирования колонок в хранилище, а также при работе с API
|-
|caption
|
|Заголовок. Используется при выводе данных пользователю
|-
|dataType
|
|Тип данных. Опрееделяет тип хранимых свойством данных. Формируется динамически исходя из списка доступных в конкретной системе пакетов
|-
|required
|
|Признак обязательного свойства. Если установлен в True, то объект класса не может быть сохранен, если данное свойство не заполнено (проверка на стороне back-end)
|-
|multi
|
|Признак преобразующий зачение в массив значений данного типа.
|-
|getCode
|
|Код (TypeScript), который задает алгоритм получения значения свойства
|-
|setCode
|
|Код (TypeScript), который задает алгоритм установки значения свойства
|}




Логика работы вычислимого свойства закладывается в параметры getCode и setCode. Метод getCode будет вызываться при попытке получения значения свойства, setCode при попытке установки значения. Так как значения данных свойств не хранятся в базе данных, при установке значения такого свойства, необходимо сохранить переданное значение где-либо ещё, либо проигнорировать такую установку.
В качестве результата выполнения getCode, указанный метод должен вернуть значение указанного типа данных, например:<syntaxhighlight lang="typescript">
return this.name + " (" + this.department +", "+this.position+")";
</syntaxhighlight>
С помощью this можно обращаться к объекту класса и другим его свойствам.
Так же, можно использовать обращения к глобальному конексту платформы, для получения различных системных параметров:<syntaxhighlight lang="typescript">
return this._eraEnvironment.getStrong('EraGlobal').myUserInfo.ext.token
</syntaxhighlight>





Версия от 13:26, 3 марта 2025

Предыдущая статья курса: Обработчики данных

Общая информация

Вычислимые свойства в редакторе класса

Вычислимые свойства (calculatedProperties) это коллекция свойств класса, значение которых определяется динамически кодом. Их значения не хранятся в базах данных и рассчитываются автоматически по мере необходимости.

Коллекция вычислимых свойств задается в редакторе класса, на вкладке Properties, в группе calculated.

Все параметры calculated-свойств, а также доступные параметры UI описаны в статье, посвященной свойствам.

Набор основных параметр у вычислимых свойств следующий:

Параметры свойства
Имя Значение по-умолчанию Комментарий
name Системное название. Используется для формирования колонок в хранилище, а также при работе с API
caption Заголовок. Используется при выводе данных пользователю
dataType Тип данных. Опрееделяет тип хранимых свойством данных. Формируется динамически исходя из списка доступных в конкретной системе пакетов
required Признак обязательного свойства. Если установлен в True, то объект класса не может быть сохранен, если данное свойство не заполнено (проверка на стороне back-end)
multi Признак преобразующий зачение в массив значений данного типа.
getCode Код (TypeScript), который задает алгоритм получения значения свойства
setCode Код (TypeScript), который задает алгоритм установки значения свойства


Логика работы вычислимого свойства закладывается в параметры getCode и setCode. Метод getCode будет вызываться при попытке получения значения свойства, setCode при попытке установки значения. Так как значения данных свойств не хранятся в базе данных, при установке значения такого свойства, необходимо сохранить переданное значение где-либо ещё, либо проигнорировать такую установку.

В качестве результата выполнения getCode, указанный метод должен вернуть значение указанного типа данных, например:

return this.name + " (" + this.department +", "+this.position+")";

С помощью this можно обращаться к объекту класса и другим его свойствам.

Так же, можно использовать обращения к глобальному конексту платформы, для получения различных системных параметров:

return this._eraEnvironment.getStrong('EraGlobal').myUserInfo.ext.token


Следующая статья курса: Задание 8. Настройка вычисления полей
Предыдущая статья курса: Обработчики данных