Notepad ++などのテキスト・エディタでルールを作成できます。ルール・ファイルは、マルチバイト文字セット(MBCS)対応のASCIIフォーマットを使用するか、Little Endianバイト・オーダーによってUnicodeフォーマットにエンコードされたファイルを使用して作成できます。ルール・ファイルでは、Visual Basic Scriptの関数とOracle Hyperion Financial Managementの関数を使用します。デフォルトでは、ルール・ファイルにはRLEファイル拡張子が使用されます。
Financial Managementのルールのすべてのタイプを任意の順序でルール・ファイルに含めることができます。表10-3に、各ルーチンを定義するための基本的な構文を示します。
表10-3 ルール・ルーチン
ルール・ルーチン | 構文 |
---|---|
Sub Calculate |
'ここに、計算ルールを入力します。
|
Sub Translate |
'ここに、換算ルールを入力します。
|
Sub Allocate |
'ここに、配賦ルールを入力します。
|
Sub Input |
'ここに、入力ルールを入力します。
|
Sub NoInput |
'ここに、NoImputルールを入力します。
|
Sub Consolidate |
'ここに、連結ルールを入力します。
|
Sub Dynamic |
'ここに、動的ルールを入力します。
|
Sub Transactions |
'ここに、取引ルールを入力します。
|
Sub EquityPickup |
'ここに、エクイティ・ピックアップ・ルールを入力します。
|
Sub OnDemand |
'ここに、オンデマンド・ルールを入力します。
|
エクイティ・ピックアップ・ルールの例
次のセクションでは、資本ピックアップ・ルールのサンプル・セクションを示します。エクイティ・ピックアップを計算するために、アプリケーション管理者は、Sub EquityPickUpという名前のルール・ファイルに新しいセクションを作成する必要があり、ここで、EPUの計算が定義されます。セクションを実行するときのデフォルトの視点は次のとおりです。
現在のシナリオ、年および期間
エンティティ: 処理されるペアの所有者
値: エンティティ通貨
Sub EquityPickUp()
Owner = Hs.Entity.Member
Owned = Hs.Entity.Owned
OwnerDefaultCurrency = HS.Entity.DefCurrency("")
lPown = Hs.GetCell("E#" & Owned & ".I#" & Owner & ".V#[None].A#[Shares%Owned].C1#[None].C2#[None].C3#[None].C4#[None]")
Hs.Clear "A#IncomeFromSubsidiary.I#" & Owned
Hs.Exp "A#IncomeFromSubsidiary.I#" & Owned & " = E#" & Owned & ".V#" & OwnerDefaultCurrency & ".A#NetIncome.I#[ICP Top] *" & lPown
End Sub
オンデマンド・ルールの例
データ・フォームからオンデマンド・ルールを実行するために、管理者は、Sub OnDemandという名前のルール・ファイルに新しいセクションを作成する必要があり、ここで、オンデマンド・ルールが定義されます。
Sub OnDemand_Calculation
HS.Exp "A#CogsTP=15424"
HS.Exp "A#Admex=32452"
End Sub
Sub Calculate (他にはなし)で使用できるすべてのHS関数はオンデマンド・ルールでも使用できることに注意してください。Sub Calculateとは異なり、以前にIsCalculatedデータ・ポイントに書き込まれたデータは、オンデマンド・ルールの実行時にクリアされないことにも注意してください。