Essbaseスクリプトの作成
post
/essbase/rest/v1/applications/{applicationName}/databases/{databaseName}/scripts
指定されたアプリケーションおよびデータベース内にスクリプトを作成し、作成したスクリプトを返します。
リクエスト
サポートされているメディア・タイプ
- application/json
パス・パラメータ
- applicationName(required): string
アプリケーション名。
- databaseName(required): string
データベース名。
問合せパラメータ
- file: string
スクリプト・ファイルのタイプ。
デフォルト値:calc
スクリプトの詳細。
レスポンス
200 レスポンス
OK
スクリプトが正常に作成されました。スクリプト詳細、スクリプトを取得、編集または削除するためのリンク、その内容を取得するためのリンクが含まれています。
400 レスポンス
不正なリクエスト
スクリプトの作成に失敗しました。アプリケーション名またはデータベース名が正しくないか、スクリプトのJSONが正しくないか、指定したスクリプト名がすでに存在する可能性があります。
415 レスポンス
受入れできません
メディア・タイプがサポートされていないか指定されていません。
500 レスポンス
サーバーの内部エラーです。
例
次の例では、REST APIを使用してEssbase計算スクリプト、MDXスクリプトまたはレポート・スクリプトを作成する方法を示します。
この例では、cURLを使用して、Windowsシェル・スクリプトからREST APIにアクセスします。呼出し元ユーザーのIDおよびパスワードは変数であり、properties.bat
内でその変数値が設定されています。
計算スクリプトの作成
call properties.bat
curl -X POST "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/scripts?links=none" -H "accept: application/json" -H "Content-Type:application/json" -d '{"name": "EBudg", "content": "/* Calculate the Budget data values for the descendants of East */\r\n\r\nFIX(Budget, @DESCENDANTS(East))\r\n CALC DIM(Year, Measures, Product);\r\nENDFIX\r\n\r\n/* Consolidate East */\r\n\r\nFIX(Budget)\r\n @DESCENDANTS(East);\r\nENDFIX"}' -u %User%:%Password%
レスポンス本体の例
{
"name" : "EBudg",
"modifiedTime" : 1721688707444,
"sizeInBytes" : 224
}
MDXスクリプトの作成
call properties.bat
curl -X POST "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/scripts?links=none&file=mdx" -H "accept: application/json" -H "Content-Type:application/json" -d '{"name": "mdx001", "content": "SELECT\r\n {[Year].[Qtr1], [Year].[Qtr2]} \r\nON COLUMNS,\r\n {\r\n BottomSum(\r\n [Product].Members, 10000, [Year].[Qtr1]\r\n ) \r\n }\r\nON ROWS\r\nFROM Sample.Basic\r\nWHERE ([Measures].[Sales])"}' -u %User%:%Password%
レスポンス本体の例
{
"name" : "mdx001",
"modifiedTime" : 1721690519590,
"sizeInBytes" : 183
}
レポート・スクリプトの作成
call properties.bat
curl -X POST "https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/scripts?links=none&file=report" -H "accept: application/json" -H "Content-Type:application/json" -d '{"name": "actsales", "content": "//Sample 1: Creating a Different Format for Each Page\r\n<PAGE (Accounts, Scenario, Product)\r\n // cube: demo.basic\r\n // script: actsales.rep\r\nSales\r\nActual\r\n<IDESCENDANTS Audio\r\n\r\n <COLUMN (Year)\r\n <CHILDREN Year\r\n\r\n<ROW(Market)\r\n<ICHILDREN Market\r\n ! \r\n"}' -u %User%:%Password%
レスポンス本体の例
{
"name" : "actsales",
"modifiedTime" : 1721690725392,
"sizeInBytes" : 264
}