MDXレポートの実行

get

/essbase/rest/v1/applications/{application}/databases/{database}/mdx/{name}

MDXレポートを実行し、選択したフォーマット(JSON、HTML、ExcelまたはCSV)で結果を返します。MDXレポートはキューブ・コンテンツに保存されます。

関連項目:

リクエスト

パス・パラメータ
問合せパラメータ
  • 結果フォーマット。

    デフォルト値: JSON
    指定可能な値: [ "XLSX", "CSV", "HTML", "JSON" ]
先頭に戻る

レスポンス

サポートされているメディア・タイプ

200 レスポンス

大部分はOK

これはストリーミングAPIであるため、ステータス200であっても失敗する可能性があります。レスポンスでerrorMessageタグを確認してエラーを特定してください。

本体()
ルート・スキーマ : InputStream
型: object

400 レスポンス

不正なリクエスト

必要なフォーマットでデータを取得できませんでした。

500 レスポンス

サーバーの内部エラーです。

先頭に戻る

次の例では、名前付きMDXレポートの結果を取得する方法を示します(これはMDXスクリプトと同じではありません)。

この例では、cURLを使用して、Windowsシェル・スクリプトからREST APIにアクセスします。呼出し元ユーザーのIDおよびパスワードは変数であり、properties.bat内でその変数値が設定されています。

この例では、Sample Basicに関連付けられている名前付きMDXレポートmdxreport01があると想定しています。レポートの問合せは次のとおりです:

SELECT
 {[Year].[Qtr1], [Year].[Qtr2]} 
ON COLUMNS,
 {
  BottomSum(
  [Product].Members, 10000, [Year].[Qtr1]
  ) 
 }
ON ROWS
FROM Sample.Basic
WHERE ([Measures].[Sales])

cURLコマンドを含むスクリプト

次のスクリプトは、MDXレポートの結果を取得し、ファイルに書き込みます。

call properties.bat
curl -X GET https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/mdx/mdxreport01 -H "Accept:application/octet-stream" -H "Content-Type:application/json" -o mdxout.json -u %User%:%Password%

レスポンス本体の例

次のJSON結果がmdxout.jsonに書き込まれます。

{ "metadata" : {"page" : ["Measures","Market","Scenario"],"column" : ["Year"],"row" : ["Product"]},"data" : [["","Qtr1","Qtr2"],["200-40","2807.0","2922.0"],["100-30","3187.0","3182.0"],["400-30","3763.0","3962.0"],["300-20","4248.0","4638.0"]] }

「次として実行」を使用する例

サービス管理者の場合、「次として実行」を使用すると、他のユーザーに偽装し、データ・アクセスを確認できます。これは、様々なユーザーに割り当てられたフィルタをテストする際に役立つことがあります。

これを実行するには、アプリケーションにプロビジョニングされるユーザー名を含むリクエスト・ヘッダーX-Essbase-LoginAsを追加します。

たとえば、次のスクリプトは、user3の権限ビューポイントを使用して、MDXレポートの実行結果をファイルに書き込みます。

call properties.bat
curl -X GET https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/mdx/mdxreport02 -H "Content-Type:application/json" -H 'X-Essbase-LoginAs: user3' -o mdxout2.json -u %User%:%Password%
先頭に戻る