|
如果在建立或編輯物件時修改影響已計算屬性的屬性,不會立即重新計算方程式。在處理完建立或編輯動作之後,會重新計算方程式並更新已計算屬性值。
如需有關如何在包括於屬性配置圖時顯示已計算屬性的資訊,請參閱屬性顯示。
|
|
已計算的屬性目前不支援多值功能。
|
函數
|
描述
|
||||||
isNull( )
|
空值檢查
|
||||||
unit( )
|
將「字串」資料類型轉換為「具有單位的實數」資料類型
|
||||||
str( )
|
將數字轉換為「字串」資料類型
|
||||||
abs( )
|
絕對值或量值
|
||||||
avg( )
|
一系列值的平均值
|
||||||
sum( )
|
一系列值的總和
|
||||||
min( )
|
一系列值的最小值
|
||||||
max( )
|
一系列值的最大值
|
||||||
round()
|
將具有小數的數值 (實數) 轉換為整數
• 當小數包含 .5 時,會將數值四捨五入為偶數 (例如,30.5 會向下四捨五入為 30,而 31.5 會向上四捨五入為 32)
• 當小數包含其他數值時,會將數值四捨五入為最相近的值 (例如,30.8 會向上四捨五入為 31,而 33.4 會向下四捨五入為 33)
|
||||||
bround()
|
bround (BigDecimal round) 函數的作用與 round 函數類似。當計算小數部份接近 5 的小數 (例如 xx.5) 時,與 round 函數相比,bround 函數會提供更高的精確度。
使用 bround 函數,您可以指定應考慮的捨入值小數位數。例如 ((bround((a+b+c)*10, dp))/10.00),其中 a、b 和 c 是屬性,dp 是應考慮捨入的小數位。如果未提供,dp 的預設值為 7。
在下面的範例中,round 函數會傳回不同的結果,而 bround 函數會傳回相同的結果:
• ((round((10.20+10.35+02.00)*10))/10.00) —> (round(225.4999999999997)/10.00) —> 225/10.00 —> 22.5
• ((bround((10.20+10.35+02.00)*10))/10.00) —> (bround(225.49999999999997)/10.00) —> 226/10 —> 22.6
• ((round((10.25+10.30+02.00)*10))/10.00) —> (round(225.5)/10.00) —> 226/10.00) —> 22.6
• ((bround((10.25+10.30+02.00)*10))/10.00) —> (bround(225.5)/10.00 —> 226/10) —> 22.6
根據 java 中浮點數的內部表示,((10.20+10.35+02.00)*10) 會傳回值 225.4999999999997,((10.25+10.30+02.00)*10) 會傳回值 225.5。
針對值 225.49999999999997,請考慮在 bround 函數中提供不同 dp 值時得到的這些結果。
|
||||||
mod()
|
傳回一個數字除以另一個數字的餘數。(僅限「整數」資料類型)
|
||||||
${}
|
換行屬性內部名稱,其中包含特殊字元,因此可在方程式中使用。所有屬性內部名稱都可以換行,但是含有破折號 (-)、貨幣符號 ($) 或方括號 ([]) 的屬性內部名稱在方程式中使用時必須換行。例如,內部名稱為 my-attribute 或 my[very$complex]-attribute 的屬性若按下列方式換行,則可用於方程式︰
• ${my-attribute}
• ${my[very$complex]-attribute}
如果用於範例:計算數值部份的屬性具有內部名稱,且其中包含特殊字元,則「總成本」屬性的方程式可能如下所示︰(${item-quantity}*${unit-cost})+${handling-fee}
|
運算子
|
描述
|
+
|
加法;也可用於合併字串
|
-
|
減法
|
*
|
乘法
|
/
|
除法
|
( )
|
前括號及後括號,用於指出操作順序的不同優先程度 (括號內的操作應先執行)
|
" "
|
雙引號,用於指出引號內的內容是文字字串。會將不在雙引號內的任何非數字視為屬性名稱
|
>
|
大於
|
<
|
小於
|
>=
|
大於等於
|
<=
|
小於等於
|
==
|
等於
|
!=
|
不等於
|
^
|
次方或冪
|
&
|
和
|
|
|
或
|
~
|
非
|
^*
|
排除 Or
|
&&
|
和
|
||
|
或
|
!
|
非
|
? :
|
條件運算子,指出指定的條件為真或不為真時的結果:
(條件) ? 為真的值 : 不為直的值
例如,假設某個類型有長度、寬度及形狀的屬性,其中形狀是利用下列方程式得出的已計算屬性:
(長度>寬度) ? "較長" : "較寬"
若長度屬性值大於寬度屬性值,則形狀屬性會被指派一個較長的值。若長度屬性值不大於寬度屬性值,則形狀屬性會被指派一個較寬的值。
|
%
|
餘數
|