若要在「科目調節」中定義屬性,請執行下列動作:
日期
日期和時間
整數
清單
輸入問題的有效回應清單。
多行文字
最大長度應該少於 4,000 個字元。
選取多行文字,然後輸入行數為 3 至 50 行。「多行文字」決定「動作」對話方塊在不捲動的情況下可看見的文字行數。
對於「多行文字」類型:對於「多行文字」類型:在「調節動作」對話方塊上。
數字
如果您選取「數字」,請選取數字格式化選項:
在「小數位數」中,輸入要顯示的小數位數值。
如果您要讓數字顯示千分位分隔符號 (例如 1,000.00),請選取「千分位分隔符號」選項
從「幣別符號」清單中,選取幣別符號,例如「美元 ($)」。
從「負數」清單中,選取如何顯示負數,例如 (123)。
從「比例」清單中,選取數字的比例值,例如 1000。
文字
True 或 False
使用者
是或否
日期
日期和時間
整數
清單
輸入問題的有效回應清單。
多行文字
最大長度應該少於 4,000 個字元。
選取多行文字,然後輸入行數為 3 至 50 行。「多行文字」決定「動作」對話方塊在不捲動的情況下可看見的文字行數。
數字
如果您選取「數字」,請選取數字格式化選項:
在「小數位數」中,輸入要顯示的小數位數值。
如果您要讓數字顯示千分位分隔符號 (例如 1,000.00),請選取「千分位分隔符號」選項
從「幣別符號」清單中,選取幣別符號,例如「美元 ($)」。
從「負數」清單中,選取如何顯示負數,例如 (123)。
從「比例」清單中,選取數字的比例值,例如 1000。
文字
True 或 False
使用者
是或否
計算
註:
此功能僅在 11.1.2.4.100 (修補程式 20307212) 提供使用。如需新功能和更新至 11.1.2.4.100 版的相關資訊,請參閱 My Oracle Support https://support.oracle.com計算屬性是唯讀屬性。管理員可以將屬性新增至「動作」對話方塊的屬性區段,工作流程使用者可在「動作」對話方塊和交易中看到這些屬性。管理員可以將存取權設為「不顯示」,以限制只有特定角色才能存取。以計算屬性 XYZ 為例,管理員可以新增「檢視者:不顯示」存取權,就不會向檢視者顯示 XYZ。
任何使用者角色都可以將計算屬性新增為檢視和 Portlet 中的欄。也可以在「篩選面板」中將它們新增為可篩選的屬性。
選取計算時會出現「計算」定義區段:
計算類型:值清單取決於屬性類型:
將值指派給清單 — 將值指派給清單類型屬性。
將清單指派給值 — 將「清單值」指派給不同屬性的值。僅適用於「清單」類型的屬性。
條件 — 條件計算 (If – Then – Else)
指令碼 — 自由形式指令碼計算。「文字」、「數字」或「整數」類型的屬性可以使用指令碼。
下表列出選擇「計算」選項時,每個屬性類型可使用的計算類型:
表格 21-3 選擇「計算」選項時每個屬性類型可使用的計算類型
屬性類型 | 將值指派給清單 | 條件 | 指令碼 | 將清單指派給值 |
---|---|---|---|---|
日期 | ||||
日期/時間 | ||||
整數 | X | X | X | |
清單 | X | X | ||
多行文字 | X | X | X | |
數字 | X | X | X | |
文字 | X | X | X | |
True/False | X | |||
使用者 | ||||
是/否 | X |
當您選取指令碼計算類型時,若要輸入自由形式計算方程式,請使用「新增屬性」和「新增函數」:
新增屬性—選取屬性,然後按一下 將屬性插入至游標所在位置的「計算定義」方塊。如果游標剛好在單字或屬性的中間,則定義中會取代該單字/屬性。根據指令碼格式,任何新增的屬性會以大括弧 {} 括住名稱。
新增函數—選取函數,然後按一下 將函數新增至「計算定義」。新增的「函數」會提供每個參數的佔位字元。
例如:
在計算定義中插入 TRANSLATE 函數:
TRANSLATE(<Value>, <To Currency>) - TRANSLATE(<Value>, <To Currency>)
然後以屬性取代佔位字元:
TRANSLATE({Source System Balance (Entered)}, 'USD') - TRANSLATE({Subsystem Balance (Entered)}, 'USD')
其他指令碼函數範例:
新增月:傳回日期偏移,即從開始日期算起的指定月數。日期將一律落在指定的月份偏移中。如果開始日期不在偏移月份的日期值之內,將會使用偏移月份的最後一天。例如,EDate (31-Jan-2017, 1) 會傳回 (28-Feb-2017)。對於月份,請輸入開始日期之前或之後的月數。正值月份會產生未來日期。負值會產生過去的日期。
EDate(<Start Date>, <Months>, <Length>)
範例:EDate(DATE(2017, 2, 15) 3)
前期函數平均值:計算前 X 期數值金額的平均值。
AVERAGE_PRIOR(<Value>, <Number of Periods>, <To Currency*>, <Rate Type*>, <Rate Period*>
範例:AVERAGE_PRIOR( {Source System Balance (Reporting)}, '2', 'EUR', 'REC')
日期:傳回以指定的年、月和日整數值為基礎的日期值。例如,此函數會從函數建立「日期」類型值,因此 DATE(2018, 5, 31) 會轉換成 2018 年 5 月31 日。此值接著可以用在「日期差異」函數中,以提取某個日期 (例如結束日期) 和此特定日期之間中差異天數。
DATE(<Year>, <Month>, <Day>)
日期差異:傳回兩個日期之間的天數、時數、分鐘數或秒數差異。對於「日期 1」和「日期 2」,可使用值 'TODAY' 和 'NOW',分別代表目前的日期 (不含時間元素) 和日期時間。
DATE_DIFF(<Date1>, <Date2>, <Type>)
範例:DATE_DIFF('TODAY', {Preparer End Date}, 'DAYS') 或 DATE_DIFF({Preparer End Date}, 'NOW', 'HOURS')
擷取文字:傳回值內從指定的位置開始的子字串。
SUBSTRING(<Value>, <Location>, <Length>)
範例:SUBSTRING( {Name} , 5, 10)
天:以整數傳回日期的天數值
DAY(<DATE>)
If Then Else:可讓使用者將條件計算插入指令碼計算。IF_THEN_ELSE 計算也可以巢狀化來支援 "ELSE IF" 類型計算。
IF_THEN_ELSE(<Condition>, <Value1>, <Value2>)
範例:
IF_THEN_ELSE( {Risk Rating} = 'Low', 'Good', IF_THEN_ELSE( {Risk Rating} = 'Medium', 'Better', IF_THEN_ELSE({Risk Rating} = 'High', 'Best','Bad')))
小寫:傳回小寫的值。
LOWERCASE(<Value>)
範例:LOWERCASE( {Description} )
最大值:傳回屬性清單中的最大值。不限參數個數。
MAX(<Value1>, <Value2>,<ValueN>)
範例:MAX( TRANSLATE( {Source System Balance (Entered)}, 'USD', 'Accounting'), TRANSLATE( {Source System Balance (Functional)}, 'USD', 'Accounting'), TRANSLATE( {Source System Balance (Reporting)}, 'USD', 'Accounting') )
前期最大值:傳回前 X 期的最大值。
MAX_PRIOR (<Value>, <Number of Periods>, <To Currency*>, <Rate Type*>, <Rate Period*>)
範例:MAX_PRIOR( {Source System Balance (Functional)}, '6', 'CAD', 'REC', 'CURRENT')
最小值:傳回屬性清單中的最小值。不限參數個數。
MIN(<Value1>, <Value2>,<ValueN>)
範例:MIN( TRANSLATE( {Source System Balance (Entered)}, 'CAD', 'REC'), TRANSLATE( {Source System Balance (Functional)}, 'CAD', 'REC'), TRANSLATE( {Source System Balance (Reporting)}, 'CAD', 'REC') )
前期最小值:傳回前 X 期的最小值。
MIN_PRIOR (<Value>, <Number of Periods>, <To Currency*>, <Rate Type*>, <Rate Period*>)
範例:MIN_PRIOR( {Source System Balance (Functional)}, '6', 'EUR', 'Simplified')
月:以整數 (1-12) 傳回日期的月份值
MONTH (<DATE>)
前期:傳回指定前一期的值。
PRIOR(<Value>, <Number of Periods Prior*>, <To Currency*>, <Rate Type*>, <Rate Period*>)
範例:PRIOR( {Source System Balance (Entered)}, '1', 'EUR', 'rec', 'prior')
四捨五入:傳回四捨五入到指定小數位數的值。
ROUND(<Value>, <Decimal Places>)
範例:ROUND( ({Scripted Translate} /7), 4)
前期總和:傳回前 X 期的值總和。
SUM_PRIOR(<Value>, <Number of Periods>, <To Currency*>, <Rate Type*>, <Rate Period*>)
範例:SUM_PRIOR( {Source System Balance (Reporting)}, '3', 'EUR', 'REC')
文字位置:傳回在值中的子字串索引,從 1 開始以做為第一個位置。
INSTRING(<Value>, <Value To Search>)
範例:INSTRING( UPPERCASE( {Name} ), 'TAX' )
轉換:使用指定的匯率類型將幣別屬性轉換為數值屬性。
TRANSLATE(<Value>, <To Currency>, <Rate Type>)
範例:TRANSLATE( {Source System Balance (Entered)}, 'EUR', 'Accounting')
大寫:傳回大寫的值。
UPPERCASE(<Value>)
範例:UPPERCASE( {Name} )
年:以整數傳回日期的年度值。
YEAR (<DATE>)