在建立折扣和附加費時,您需要定義一個公式來計算金額。 系統會在訂單成立時自動計算此金額。 折扣金額應為負數,附加費則為正數。 公式可以回傳絕對值(以貨幣計)或成本的百分比。 最重要的是,公式可以包含參數和函數。
在公式中,您可以使用預訂參數。 參數必須用中括號括起來。 例如:100 * [參數]。
若要新增參數,請點擊 插入參數 按鈕。
然後選擇您需要的參數。
參數名稱會自動產生, 但您也可以自行變更。 點擊 插入 後,參數就會加入公式中。
公式中使用的參數代表的是份額數量,而不是價格。 例如,這可以是預訂兒童票的張數。
對於涵蓋整個資源的價格選項,若該價格選項在訂單中被預訂,參數值為 1; 否則,參數值為 0。
數字欄位會以數字形式傳遞給公式。 核取方塊欄位若在表單上被勾選,則傳遞值為 1; 否則為 0。
您也可以使用 [STEPS] 參數。 這代表已預訂的步長數,例如每小時租賃的時數。 此外,您還可以為每個規則分別設定此參數。 這些選項僅在資源類型為租賃時可用。
除了標準的算術運算外,您還可以使用下列函數。 若要新增函數,請點擊 插入函數 按鈕。
從清單中選擇所需的函數。
選定的函數會立即插入到公式中。
函數清單:
- Abs([X]) 傳回數字的絕對值。
範例:Abs(-2) = 2。 - Ceiling([X]) 將數字無條件進位到最接近的整數。
範例:Ceiling(7.23) = 8。 - Floor([X]) 將數字無條件捨去到最接近的整數。
範例:Floor(4.75) = 4。 - Max([X],[Y]) 傳回兩個數字中較大的值。
範例:Max(7,8) = 8。 - Min([X],[Y]) 傳回兩個數字中較小者。
範例:Min(7,8) = 7。 - Pow([X],2) 傳回第一個數字的第二個數字次方。
範例:Pow(3,2) = 9。 - Round([X]) 將數字四捨五入到最接近的整數。
範例:Round(3.45) = 3。 - Round([X],2) 將數字四捨五入到指定的小數位數。
範例:Round(3.4576,2) = 3.46。 - Sign([X]) 負數回傳 -1,正數回傳 1。
範例:Sign(-99) = -1。 - Sqrt([X],2) 計算平方根。
範例:Sqrt(4) = 2。 - Truncate([X]) 移除數字的小數部分。
範例:Truncate(15.7) = 15。 - if([CONDITION], [X], [Y]) 判斷條件是否成立,若為真則回傳 [X],否則回傳 [Y]。 條件中可使用這些運算子:>、>=、=、<、<=、<>、or、and。
範例:if([STEPS] > 5, 100, 200) = 100(預訂六個時段時)。 - in([X], 1, 2, 3..) 檢查數字是否在序列中。 此結果可用於 if 函數的條件中。
範例:in(7,1,7,8) = true。
系統同時支援三角函數及其他函數:Sin([X])、Cos([X])、Tan([X])、Log([X],[Y])、Log10([X])、Exp([X])、Asin([X])、Acos([X])、Atan([X])、IEEERemainder([X],[Y])。