|
Если атрибут, влияющий на расчетный атрибут, изменяется при создании или правке объекта, формула не пересчитывается сразу. Перерасчет формулы и обновление значения рассчитываемого атрибута выполняются после завершения обработки действия создания или правки.
Сведения об отображении расчетных атрибутов, включенных в макеты атрибутов, см. в разделе Отображение атрибутов.
|
|
Для расчетных атрибутов многозначные функции в настоящее время не поддерживаются.
|
Функция
|
Описание
|
isNull( )
|
Проверка на ноль
|
unit( )
|
Преобразование типа данных Строка в тип данных Вещественное число с единицей измерения
|
str( )
|
Преобразование числа в данные типа Строка
|
abs( )
|
Абсолютное значение или величина
|
avg( )
|
Среднее списка значений
|
sum( )
|
Сумма списка значений
|
min( )
|
Минимум списка значений
|
max( )
|
Максимум списка значений
|
round()
|
Преобразование числа с десятичными разрядами (вещественного числа) в целое число
• Если десятичное число содержит ".5", это число округляется до ближайшего четного числа (например, 30.5 округляется вниз - до 30, а 31.5 округляется вверх - до 32)
• Если десятичные разряды содержат другие цифры, число округляется до ближайшего целого числа (например, 30.8 округляется вверх - до 31, а 33.4 округляется вниз - до 33)
|
mod()
|
Получение остатка от деления одного числа на другое (только типы данных Целое число)
|
${}
|
Обрамляет внутренние наименования атрибутов, которые включают специальные символы, чтобы их можно было использовать в формулах. Можно обрамлять все внутренние наименования атрибутов, но внутренние наименования атрибутов, которые содержат тире (-), знак доллара ($) или квадратные скобки ([ ]), необходимо обрамлять при использовании в формулах. Например, атрибуты с внутренними наименованиями my-attribute или my[very$complex]-attribute могут использоваться в формулах, если они обрамлены следующим образом:
• ${my-attribute}
• ${my[very$complex]-attribute}
Если бы внутренние наименования атрибутов, используемых в разделе Пример: вычисление числового значения, содержали специальные символы, формула для атрибута общих затрат выглядела бы следующим образом:(${item-quantity}*${unit-cost})+${handling-fee}
|
Оператор
|
Описание
|
+
|
Сложение. Может также использоваться для последовательного соединения строк.
|
-
|
Вычитание
|
*
|
Умножение
|
/
|
Деление
|
( )
|
Открывающие и закрывающие скобки изменяют приоритет последовательности выполнения операций (сначала выполняются операции в скобках)
|
" "
|
Двойные кавычки указывают, что их содержимое является символьной строкой. Любое нечисловое значение, не заключенное в двойные кавычки, считается наименованием атрибута.
|
>
|
Больше
|
<
|
Меньше
|
>=
|
Больше или равно
|
<=
|
Меньше или равно
|
==
|
Равно
|
!=
|
Не равно
|
^
|
Показатель степени или оператор возведения в степень
|
&
|
И
|
|
|
Или
|
~
|
Не
|
^*
|
Исключающее "Или"
|
&&
|
И
|
||
|
Или
|
!
|
Не
|
? :
|
Условный оператор, показывающий, что результат зависит от того, является ли заданное условие истинным или ложным:
(условие) ? значение для истины : значение для лжи
Например, предположим, что тип имеет атрибуты длины, ширины и формы, где форма является расчетным атрибутом со следующей формулой:
(длина>ширина) ? "длинный" : "широкий"
Если значение атрибута длины больше, чем значение атрибута ширины, то атрибуту формы присваивается значение длинный. Если значение атрибута длины не больше, чем значение атрибута ширины, то атрибуту формы присваивается значение широкий.
|
%
|
Остаток
|