表示式可讓您在「值/表示式」欄位中執行如下:
執行簡單的數學方程式。
使用 CURVAL 參數以指定邏輯科目運算的值。請注意,CURVAL 參數可以用在表示式中,就像用在邏輯函數中一樣,不過在表示式中必須用豎線將 CURVAL 括起來。例如,CURVAL 表示式包含使用 |Account| 標記法的科目規格,以及使用實體、類別、期間和科目之 POV 詳細資料的值規格。
函數允許使用帶有運用 Jython 語法之 if/else 的簡單邏輯。Jython 命令可用於函數中,並且會比表示式更加複雜。
表示式
表示式運算子用於執行「值/表示式」欄位中定義的自訂邏輯表示式。邏輯表示式不能使用變數或 If
陳述式,因而比邏輯函數簡單。除 |CURVAL|
外,表示式沒有其他內建參數。您不需要為表示式指派 RESULT
值。
表示式的執行速度比邏輯函數快。您可在表示式中使用 Oracle Hyperion Financial Data Quality Management, Enterprise Edition 查詢函數,就像用在邏輯函數中一樣。若要寫入自訂表示式,請連按兩下「值/表示式」欄位,以開啟表示式編輯器。
|CURVAL| + |810| + |238|
以上函數使用 FDMEE Lookup 函數,將兩個來源帳戶新增至邏輯帳戶的值。請注意,CURVAL
參數可以用在表示式中,就像用在邏輯函數中一樣,不過在表示式中必須用垂直線將 CURVAL
括起來。
(|CURVAL| + |000,10,09/30/01,810|) * 100
以上函數使用 FDMEE 查詢函數,將來源科目 (810) 和來自指定的中心、FDMEE 類別及 FDMEE 期間的來源科目,與邏輯科目的值相加,然後將得出的總計乘以 100。
函數
函數運算子用於執行在「值/運算式」欄位中定義的自訂邏輯函數。
若要撰寫函數,請從「邏輯項目」行的「運算子」下拉清單中選取「函數」,然後按一下「編輯」圖示以開啟編輯視窗。邏輯函數通常用於條件對映和涉及多個來源科目的複雜運算。邏輯函數可使用 Jython 命令,包含變數、if/elif/else 陳述式、數值函數,以及其他 Jython 結構。
邏輯函數可使用預先定義的函數參數,也要求您指派值至 RESULT 變數,以便可針對新建立的邏輯科目更新值。邏輯函數中可使用下列函數參數,而且這些參數不需要使用 "|" 標記法:
表格 4-4 函數運算子及描述
函數運算子 | 描述 |
---|---|
CURVAL | 邏輯科目運算的來源值 |
StrLocation | 作用中的位置名稱 |
StrCenter | 邏輯科目實體 |
StrCatKey | 作用中類別索引鍵,非名稱。您也需要查詢資料庫中的類別索引鍵以使用參數。 |
StrPerKey | 作用中期間 |
Entity、Category、Period、Account| | 查詢邏輯函數中可能會使用的標記法。這是邏輯表示式中提供的相同標記法。 |
Skip | 如果已將 "Skip" 指派至關鍵字 RESULT,則不會建立邏輯科目。 |
您可以使用大寫字母、小寫字母或混合大小寫字母來定義函數參數。但是,關鍵字 RESULT 必須使用大寫字母。
指派函數傳回值
「邏輯函數」的結果必須指派給關鍵字 RESULT
。如果沒有向 RESULT 關鍵字指派傳回值,邏輯引擎會將結果值設為零。這樣會造成跳過計算,因而不會建立邏輯科目。
當邏輯科目計算傳回大於零的值時,下列函數會將邏輯科目計算的結果 (使用 CURVAL 參數) 指派至邏輯科目 (RESULT)。如果未符合第一個條件,則會因關鍵字 "Skip" 而不建立邏輯科目。
if CURVAL > 0:
RESULT = CURVAL
else:
RESULT = "Skip"
註:
邏輯函數必須使用 Jython 標記法和縮排。
下列函數僅在使用中的 FDMEE 類別索引鍵為 "10" 時,才會將邏輯科目計算的結果指派給邏輯科目。
if StrCatKey == "10":
RESULT = CURVAL
else:
RESULT="Skip"
此函數僅在「條件科目實體」為 "000" 時,才將邏輯科目計算的結果指派給邏輯科目。
if StrCenter == "000":
RESULT = CURVAL * 100
else:
RESULT="Skip"
如果目前的 FDMEE 期間為「Dec 2013」,此函數會使用 FDMEE 查詢函數,將來源科目 (810) 與邏輯科目的值相加。
if StrPerKey == "12/31/2013":
RESULT = CURVAL + |810|
else:
RESULT="Skip"
當作用中的位置是「Texas」時,此函數會使用 FDMEE 查詢函數,將來自不同實體、FDMEE 類別及 FDMEE 期間的另一個來源科目,與邏輯科目的值相加。
If StrLocation == "Texas":
RESULT = CURVAL + |000,10,09/30/13,810|
else:
RESULT="Skip"