MDXレポートの実行
/essbase/rest/v1/applications/{application}/databases/{database}/mdx/{name}
MDXレポートを実行し、選択したフォーマット(JSON、HTML、ExcelまたはCSV)で結果を返します。MDXレポートはキューブ・コンテンツに保存されます。
関連項目:
リクエスト
- application(required): string
アプリケーション名。
- database(required): string
データベース名。
- name(required): string
MDXレポート名。
- format: string
結果フォーマット。
デフォルト値:JSON
指定可能な値:[ "XLSX", "CSV", "HTML", "JSON" ]
レスポンス
- application/octet-stream
200 レスポンス
大部分はOK
これはストリーミングAPIであるため、ステータス200であっても失敗する可能性があります。レスポンスでerrorMessage
タグを確認してエラーを特定してください。
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%