置換変数の使用
代替変数は、定期的に情報を変更するためのグローバル・プレースホルダーです。 変数値に対する変更は、変数が使用されるすべての場所に反映されるため、手動による変更は削減されます。
たとえば、多くのレポートはレポート期間に依存します。現在の月に基づいてレポートを生成する場合、レポート・スクリプトを毎月手動で更新する必要があります。 CurMnth
などの代替変数をサーバーに設定すると、割り当てられた値を各月の適切な期間に変更できます。 レポート・スクリプトで変数名を使用すると、最終レポートの実行時に情報が動的に更新されます。
次の領域では、集約ストレージ・アプリケーションとブロック・ストレージ・アプリケーションの両方で置換変数を使用できます(特に指定がない場合):
-
集約ストレージ・アウトライン式
-
ブロック・ストレージ・アウトライン式
-
計算スクリプト(ブロック・ストレージ・データベースのみ)
計算スクリプトでは、代替変数およびランタイム代替変数がサポートされます。
-
データ・ロード・ルール・ファイルのヘッダー定義およびフィールド定義。 ディメンション名およびメンバー名の変数名を入力できます。
-
SQLデータ・ソースのルール・ファイルでのデータ・ソース名(DSN)指定
-
SQLデータ・ソースのルール・ファイルのSELECT句、FROM句またはWHERE句
-
セキュリティ・フィルタ
-
MDX問合せ
-
Smart View
代替変数は次のレベルで設定できます:
-
Globally: Essbaseインスタンス上のすべてのアプリケーションおよびデータベースから変数へのアクセスを提供します。
-
アプリケーション: アプリケーション内のすべてのデータベースから変数にアクセスできます。
-
データベース: 指定したデータベース内の変数へのアクセスを提供します。
置換変数の名前と値の設定ルール
代替変数の名前と値には、次のルールが適用されます:
-
置換変数名は英数字またはアンダースコア(_)で構成する必要があり、「制限」で指定された制限を超えることはできません。
-
置換変数名には、ハイフン(-)、アスタリスク(*)およびスラッシュ(/)などの英数字以外の文字を使用できません。 MDXで使用される置換変数名には、空白、句読点または角カッコ([ ])を使用しないでください。
-
サーバー、アプリケーションおよびデータベース・レベルに同じ名前の代替変数が存在する場合、変数の優先順位: データベース・レベルの置換変数は、アプリケーション・レベルの変数よりも優先され、サーバー・レベルの変数よりも優先されます。
-
置換変数値には、先頭のアンパサンド(&)以外の任意の文字を含めることができます。 代替変数値は、「制限」で指定された制限を超えることはできません。
-
代替変数値を重複メンバー名に設定するには、二重引用符で囲まれた修飾メンバー名を使用します。たとえば、&期間の値は"[2006].[Qtr1]"のようになります。
-
置換変数の使用を指定する場合は、修飾名の一部として置換変数を挿入しないでください。 たとえば、"[2004].[& CurrentQtr]"を指定することは無効です。
-
代替変数値が、数字で始まるメンバー名、空白または「計算スクリプト、レポート・スクリプト、式、フィルタ、代替変数値および環境変数値の命名規則」にリストされている特殊文字を含むメンバー名の場合、変数の入力には異なるルールが適用されます:
-
MDX文で使用する場合は、member-name値を角カッコ([ ])で囲みます。
-
MDX文で使用しない場合は、member-name値を引用符("")で囲みます。
-
-
代替変数値が数値の場合、変数の入力方法には異なるルールが適用されます:
-
MDX文で使用しない場合は、置換変数値を引用符で囲みます。たとえば、変数名がMonthで、対応する値が01 (Januaryに対応)の場合は、01 ("01")を引用符で囲みます。 置換変数は通常、ブロック・ストレージ・データベースで使用され、MDX文では使用されません。
-
MDX文(集約ストレージ・アウトラインの式など)でのみ使用され、値が数値またはメンバー名の場合は、値を引用符で囲まないでください。
ノート:
代替変数値が数値であるか、数値で始まるメンバー名または前述の特殊文字を含むメンバー名をMDXとMDX以外の両方の状況で使用する場合は、値を引用符で囲まずに、値を引用符で囲んだ2つの代替変数を作成します。
-
代替変数の設定
代替変数は、サーバー、アプリケーションまたはデータベース・レベルで設定できます。 代替変数を設定する前に、「置換変数の名前と値の設定ルール」を参照してください。
代替変数を追加または更新すると、アプリケーションに送信され、動的に解決されます。
代替変数を設定するには、「変数の使用」を参照してください。 アプリケーション・ワークブックを使用してアプリケーション・レベルで設定することも、次のMaxL文を使用することもできます:
代替変数の削除
使用されなくなった代替変数を削除する必要がある場合があります。
代替変数を削除するには、アプリケーション・ワークブックから削除するか、「Essbase webインタフェース」を使用して削除するか、次のMaxL文を使用します:
-
alter system
-
alter application
-
alter database
代替変数の更新
既存の代替変数を変更または更新できます。 代替変数を更新する前に、「置換変数の名前と値の設定ルール」を参照してください。
置換変数を更新するには、次のMaxL文を使用できます:
-
alter system
-
alter application
-
alter database