情報を変更するための変数の実装
Essbase代替変数は、情報を定期的に変更するためのプレースホルダとして使用できます。変数値への変更は、その変数が使用されるすべての場所で反映されるため、手動での更新の必要性が最小限に抑えられます。
たとえば、多くのレポートがレポート期間に依存しているとします。現在の月に基づいてレポートを生成した場合は、毎月レポート・スクリプトを手動で更新する必要があります。CurMnth
などの代替変数をEssbaseサーバーで設定すると、該当する期間に対して代入された値を毎月変更できます。レポート・スクリプトで変数名を使用した場合は、最終レポートを実行すると、情報が動的に更新されます。
次の領域では、(特に明記されていないかぎり)集約ストレージ(ASO)アプリケーションとブロック・ストレージ(BSO)アプリケーションの両方で代替変数を使用できます:
-
集約ストレージ・アウトライン式
-
ブロック・ストレージ・アウトライン式
-
計算スクリプト(ブロック・ストレージ・データベースのみ)
計算スクリプトでは、代替変数およびランタイム代替変数がサポートされています。
-
データ・ロードのルール・ファイルのヘッダー定義とフィールド定義。ディメンション名およびメンバー名に対して変数名を入力できます。
-
SQLデータソースのルール・ファイルにおけるデータソース名(DSN)の指定
-
SQLデータソースのルール・ファイルにおけるSELECT、FROMまたはWHERE句
-
セキュリティ・フィルタ
-
MDX問合せ
-
Smart View
-
レポート・スクリプト
次のレベルで代替変数を設定できます。
-
グローバル: Essbaseサーバー上のすべてのアプリケーションおよびデータベースから変数にアクセスできます。
-
アプリケーション: アプリケーション内のすべてのデータベースから変数にアクセスできます。
-
データベース: 指定したデータベース内の変数にアクセスできます。
許可される代替変数の名前と値
Essbaseで代替変数を使用する場合、代替変数の名前および値で使用できる文字およびデータ型に関するガイドラインに従ってください。
代替変数の名前と値には、次の制限があります:
変数名で使用できる文字
英数字およびアンダースコアが許可されますが、特殊文字またはスペースは許可されません。文字の制限: 制限を参照してください。
変数値で使用できる文字
先頭のアンパサンド(&
)を除いて、任意の文字を使用できます。文字の制限: 制限を参照してください。
変数値として使用されるEssbaseメンバー名
数字で開始するメンバー名または特殊文字を含むメンバー名は、ブロック・ストレージ・データベースの場合は引用符(" "
)で囲み、集約ストレージ・データベースの場合は大カッコ([ ]
)で囲みます。詳細は、「計算スクリプト、レポート・スクリプト、式、フィルタ、代替変数値および環境変数値での命名規則」を参照してください。
重複するメンバー名に代替変数値を設定するには、二重引用符で囲まれた修飾メンバー名を使用します。たとえば、&Periodの値を"[2022].[Qtr1]"
にできます。
修飾メンバー名の一部として代替変数名を使用しないでください。たとえば、"[2022].[&CurrentQtr]"
を指定することは無効です。
変数値として使用される数字
数値は、ブロック・ストレージ(BSO)・データベースの場合は引用符(" "
)、集約ストレージ(ASO)・データベースの場合は大カッコ([ ]
)で囲みます。
たとえば、変数名がMonthで、その値が01のとき、ブロック・ストレージの場合は値を"01"
として設定します。集約ストレージの場合は値を[01]
として設定します。
同じ名前を持つ複数の変数
変数は、異なるスコープで定義されているかぎり同じ名前を持つことができます。変数の解決の優先順位は次のようになります。データベース変数はアプリケーション変数の前に解決されます。アプリケーション変数はグローバル変数の前に解決されます。
代替変数の作成または設定
代替変数を設定する前に、「許可される代替変数の名前と値」を参照してください。
式、パーティション定義およびセキュリティ・フィルタで新しい代替変数値を使用できるようにするには、アプリケーションを停止して再起動します。その他の代替変数の使用はすべて、使用時に動的に解決されます。
代替変数を追加または更新すると、それらはアプリケーションに送信され、動的に解決されます。
Essbase Webインタフェースを使用して代替変数を設定するには、代替変数の使用を参照してください。アプリケーション・ワークブックを使用してアプリケーション・レベルで変数を設定したり、次のMaxL文を使用することもできます:
代替変数の削除
不要になったEssbase代替変数を削除することが必要になる場合があります。
代替変数を削除するには、アプリケーション・ワークブックから削除してキューブを構築するか、Essbase Webインタフェースから削除するか、次のMaxL文を使用します:
代替変数の更新
代替変数は情報を変更するためのプレースホルダであるため、その値を頻繁に更新することが必要になる場合があります。MaxLまたはEssbase Webインタフェースを使用して、既存の代替変数を変更できます。
代替変数を更新するには、次のMaxL文のいずれかを使用できます(使用する文は変数のコンテキストによって異なります):
-
alter system (グローバル(Essbaseサーバー・レベル)変数の更新用)
-
alter application (アプリケーション・レベルの変数の更新用)
-
alter database (キューブ・レベルの変数の更新用)
Essbase Webインタフェースを使用して変数を更新する場合は、代替変数の使用の手順を参照してください。