プライマリ・コンテンツに移動
Oracle® Essbase Oracle Essbaseの使用

F17137-05
目次へ移動
目次

前
次
機械翻訳について

MDXスクリプトの実行

データの挿入またはエクスポート操作を実行する必要がある場合、MDXスクリプトを使用します。

グリッド・データの分析の場合、MDXレポートを使用します。 「MDXレポートによるデータの分析」を参照してください。

MDXスクリプトを使用するには、ワークフローを選択します。

MDXスクリプトの記述、アップロードおよび実行

このワークフローを使用して、MDXスクリプトをテキスト・エディタで記述し、そのスクリプトをEssbaseにアップロードします。

  1. MDXスクリプトをテキスト・エディタで記述し、.mdx拡張子を付けて保存します。

  2. Essbase Webインタフェースの「ファイル」の下にあるアプリケーションまたはキューブ・ディレクトリにMDXスクリプトをアップロードします。

  3. Essbaseリボンの「計算」を使用して、「ジョブ」またはSmart ViewからMDXスクリプトを実行します。

スクリプト・エディタでのMDXスクリプトの記述および実行

このワークフローを使用して、MDXスクリプトをキューブのスクリプト・エディタで記述し、そのスクリプトを「ジョブ」から実行します。

  1. アプリケーション・ページで、アプリケーションおよびキューブを展開します。

  2. キューブの「アクション」メニューで「検査」をクリックします。

  3. 「スクリプト」「MDXスクリプト」の順にクリックします。

  4. 「+」をクリックしてスクリプト・エディタを開きます。

  5. MDXスクリプトを記述します。 メンバー・ツリーと関数リストを参考に作業してください。

  6. スクリプトを検証して保存し、スクリプト・エディタを閉じます。

  7. MDXスクリプトを「ジョブ」 (「MDXの実行」を参照)から実行するか、Smart Viewを使用している場合はEssbaseリボンの「計算」を使用して実行します。

キューブ・デザイナにおけるMDXスクリプトの作成および実行

このワークフローでは、アプリケーション・ワークブックを使用してMDXスクリプトを作成し、そのスクリプトを「ジョブ」から実行します。

  1. アプリケーション・ワークブックで、MDXワークシートを作成します。 「キューブ・デザイナでのMDXワークシートの操作」を参照してください。
  2. 「ファイル名」フィールドにファイル名を追加します。
  3. 「MDXの実行」フィールドに、キューブの作成時にMDXを実行するかどうかを指定します。 有効なエントリは、「はい」および「いいえ」です。
  4. 「スクリプト」行の下にMDXスクリプトを追加します。
  5. アプリケーション・ワークブックを保存します。
  6. キューブを構築します。 「キューブ・デザイナでのアプリケーションおよびキューブの作成」を参照してください。
  7. 「ジョブ」からMDXスクリプトを実行するか、Smart Viewを使用している場合はEssbaseリボンの「計算」を使用してMDXスクリプトを実行します。

MDXスクリプトのガイドライン

MDXスクリプトを扱う際には、次のガイドラインに従ってください。

  • データの挿入またはエクスポート操作を実行するためにMDXスクリプトを使用します。

  • グリッド分析の場合、MDXスクリプトではなくMDXレポートを使用します。

  • MDXスクリプトにはオプションでランタイム代替変数を含めることができます。

    • ランタイム代替変数を含むMDXスクリプトをSmart View内で利用するには、SET RUNTIMESUBVARS計算コマンド内でXML構文を使用し、その中に<RTSV_HINT>を含める必要があります。

    • ランタイム代替変数を設定して、Smart Viewで表示可能なデータ・スライスのみが計算されるようにするには、ランタイム代替変数の値をPOVに設定し、データ型をmemberに設定します。

    • MDXスクリプトをEssbase Webインタフェースから実行する場合、代替変数は使用できますが、ランタイム代替変数は使用できません。 MDXスクリプトでランタイム代替変数を使用するには、Smart Viewから「Essbase」リボンの「計算」を使用してスクリプトを実行する必要があります。

代替変数の使用

MDXスクリプトの例

次に、「ジョブ」またはSmart Viewのいずれかを使用して、Sample Basicキューブに対して実行可能なMDXスクリプトの例を示します。

MDX挿入

この.mdxスクリプトを保存して、「ジョブ」またはSmart View「計算」ダイアログから実行できます。

INSERT "([Measures].[Payroll])" TO "([Measures].[Revised_Payroll])"
INTO [Sample].[Basic]
FROM (
       SELECT 
            {[Measures].[Payroll]} ON COLUMNS,
                {Crossjoin
                  (Crossjoin(Descendants([Year]), 
                   Crossjoin(Descendants([Scenario]),
                  Descendants([Product]))),
                  Descendants([Market]))} ON ROWS
       FROM [Sample].[Basic]
);

前述の例は、以前Revised_PayrollメジャーをSample Basicに追加したことを前提としています。

MDXエクスポート

この.mdxスクリプトを保存して、「ジョブ」またはSmart View「計算」ダイアログから実行できます。

EXPORT INTO FILE "sample01" OVERWRITE
SELECT 
 {[Mar],[Apr]} 
ON COLUMNS,
 Crossjoin({[New York]},
  Crossjoin({[Actual],[Budget]},
     {[Opening Inventory],[Ending Inventory]})) 
ON ROWS
FROM [Sample].[Basic]
WHERE ([100-10])

スクリプトを実行すると、エクスポート・ファイルsample01.txtがファイル・カタログのキューブ・ディレクトリに保存されます。

Market,Scenario,Measures,Mar,Apr
New York,Actual,Opening Inventory,2041,2108
New York,Actual,Ending Inventory,2108,2250
New York,Budget,Opening Inventory,1980,2040
New York,Budget,Ending Inventory,2040,2170

ランタイム代替変数を使用したMDXエクスポート

この.mdxスクリプトを保存し、Smart View「計算」ダイアログから実行できます。

SET RUNTIMESUBVARS
{
 States = "Massachusetts"<RTSV_HINT><svLaunch>
                    <description>US States</description>
                    <type>member</type>
                    <allowMissing>false</allowMissing>
                    <dimension>Market</dimension>
                    <choice>multiple</choice>
                    </svLaunch></RTSV_HINT>;
};
EXPORT INTO FILE "sample002" OVERWRITE
SELECT
 {[Mar],[Apr]}
ON COLUMNS,
 Crossjoin({&States}, Crossjoin({[Actual],[Budget]},
 {[Opening Inventory],[Ending Inventory]}))
ON ROWS
FROM [Sample].[Basic]
WHERE ([100-10])

スクリプトを実行すると、エクスポート・ファイルsample002.txtがファイル・カタログのキューブ・ディレクトリに保存されます。

Market,Scenario,Measures,Mar,Apr
Massachusetts,Actual,Opening Inventory,-54,-348
Massachusetts,Actual,Ending Inventory,-348,-663
Massachusetts,Budget,Opening Inventory,-160,-520
Massachusetts,Budget,Ending Inventory,-520,-910