Get Layout Grid

post

/applications/{applicationName}/databases/{databaseName}/grid/layout

Returns the layout grid for the current grid to be saved as layout for the specified cube.

Request

Path Parameters
Back to Top

Response

200 Response

OK

Layout grid returned successfully.

400 Response

Bad Request

Validation failed. The application or database name may be missing or incorrect.

500 Response

Internal Server Error.

Back to Top

Examples

The following example shows how to get a layout from the current Essbase grid. A layout is a grid shape you want to save for future use.

This example uses cURL to access the REST API from a Windows shell script. The calling user's ID and password are variables whose values are set in properties.bat.

Script with cURL Command

The cURL command requests a layout for the Sample Basic grid described in the input input_grid.json.

call properties.bat
curl -X POST https://myserver.example.com:9001/essbase/rest/v1/applications/Sample/databases/Basic/grid/layout -H "Accept:application/json" -H "Content-Type:application/json" --data "@./input_grid.json" -o layout.json -u %User%:%Password%

Input Grid JSON

The input grid in input_grid.json is:

{
   "alias":"Default",
   "dimensions":[
      {
         "name":"Year",
         "row":-1,
         "column":0,
         "pov":"",
         "hidden":false,
         "expanded":false
      },
      {
         "name":"Measures",
         "row":1,
         "column":-1,
         "pov":"",
         "hidden":false,
         "expanded":false
      },
      {
         "name":"Product",
         "row":-1,
         "column":-1,
         "pov":"Product",
         "hidden":false,
         "expanded":false
      },
      {
         "name":"Market",
         "row":-1,
         "column":-1,
         "pov":"Market",
         "hidden":false,
         "expanded":false
      },
      {
         "name":"Scenario",
         "row":-1,
         "column":-1,
         "pov":"Scenario",
         "hidden":false,
         "expanded":false
      }
   ],
   "slice":{
      "columns":4,
      "rows":3,
      "data":{
         "ranges":[
            {
               "start":0,
               "end":11,
               "values" : [ "", "Product", "Market", "Scenario", "", "Measures", "", "", "Year", "", "", "" ],
               "types":[ "7", "0", "0", "0", "7", "0", "7", "7", "0", "2", "7", "7" ],
               "texts":[ null, null, null, null, null, null, null, null, null, null, null, null ],
               "dataFormats":[ ],
               "statuses":[ "0", "268435475", "402653203", "536870923", "0", "134217739", "0", "0", "135", "8193", "0", "0" ],
               "filters":[ ],
               "enumIds":[ "", "", "", "", "", "", "", "", "", "", "", "" ]
            }
         ]
      }
   }
}

The input JSON describes the grid that is represented by the sample table. Numeric data is not included in the values range, as it is not needed to produce a layout object.

- Product Market Scenario
- Measures - -
Year 105522 - -

Response Layout JSON

The resulting layout written to layout.json is:

{
  "alias" : "Default",
  "dimensions" : [ {
    "name" : "Year",
    "page" : 0,
    "hidden" : false,
    "expanded" : false,
    "axis" : "POV",
    "position" : 0
  }, {
    "name" : "Measures",
    "page" : 0,
    "hidden" : false,
    "expanded" : false,
    "axis" : "POV",
    "position" : 0
  }, {
    "name" : "Product",
    "page" : 0,
    "hidden" : false,
    "expanded" : false,
    "axis" : "POV",
    "position" : 0
  }, {
    "name" : "Market",
    "page" : 0,
    "hidden" : false,
    "expanded" : false,
    "axis" : "POV",
    "position" : 0
  }, {
    "name" : "Scenario",
    "page" : 0,
    "hidden" : false,
    "expanded" : false,
    "axis" : "POV",
    "position" : 0
  } ],
  "data" : {
    "values" : [ [ "", "Product", "Market", "Scenario" ], [ "", "Measures", "", "" ], [ "Year", "", "", "" ] ],
    "types" : [ [ "7", "0", "0", "0" ], [ "7", "0", "7", "7" ], [ "0", "2", "7", "7" ] ],
    "texts" : [ [ null, null, null, null ], [ null, null, null, null ], [ null, null, null, null ] ],
    "dataFormats" : [ ],
    "statuses" : [ [ "0", "268435475", "402653203", "536870923" ], [ "0", "134217739", "0", "0" ], [ "135", "8193", "0", "0" ] ],
    "filters" : [ ],
    "enumIds" : [ [ "", "", "", "" ], [ "", "", "", "" ], [ "", "", "", "" ] ]
  }
}
Notice that layout objects do not include the data values. You can use this saved layout to render a grid using Execute Grid Layout.
Back to Top