Cube GetCellDebugInformation

Retrieves the debug information of a cell, given its coordinates. The debug information includes:

  • Cell coordinates
  • Cell type, either basic or calculated
  • If relevant, the rule that calculates the cell value
  • If relevant, details about the base descendants that are consolidated in the cell

Request

This example requests details about the base descendants that are consolidated in the cell.

<Alea:Document xmlns:Alea="http://www.misag.com">
  <Alea:Request RequestID="001" Class="Cube" Method="GetCellDebugInformation">
    <Alea:CellCoordinates Cube="Sales">
      <Alea:Element Dimension="PROFIT" Name="Revenue" />
      <Alea:Element Dimension="TIME" Name="2014" />
      <Alea:Element Dimension="VERSION" Name="Actual" />
      <Alea:Element Dimension="CURRTYPE" Name="USD" />
      <Alea:Element Dimension="LEVEL" Name="IFRS" />
      <Alea:Element Dimension="UNIT" Name="G0000" />
      <Alea:Element Dimension="INTERCO" Name="TotalPartner" />
      <Alea:Element Dimension="PRODUCT" Name="T (118 mph  190 km/h)" Hierarchy="Speed Rating" />
    </Alea:CellCoordinates>
  </Alea:Request>
</Alea:Document>

If no hierarchy is specified for an element, the default hierarchy is used.

You can also write the request like this:

<Alea:Document xmlns:Alea="http://www.misag.com">
  <Alea:Request RequestID="001" Class="Cube" Method="GetCellDebugInformation">
    <Alea:CellCoordinates Cube="sales" Elements="2014[Actual[USD[IFRS[G0000[TotalPartner[T (118 mph  190 km/h)[Revenue" Hierarchies="[[[[[[Speed Rating[" />
  </Alea:Request>
</Alea:Document>

The elements and hierarchies must be presented in the native order of the dimensions inside the cube. This order can be different from the order of the dimensions in MDX / XMLA. You can check the native order using the Cube GetList function.

Answer

The Cell Coordinates section provides the cell coordinates of the cell that was requested. For each dimension there is a row with dimension name, hierarchy name, and element name. The different parts are tab separated.<Alea:Document xmlns:Alea="http://www.misag.com"> <Alea:Request RequestID="001"> <Alea:Return> <Alea:CellNote> ---Cell Coordinates ------------------------------- TIME TIME 2014 VERSION VERSION Actual CURRTYPE CURRTYPE USD LEVEL LEVEL IFRS UNIT UNIT G0000 INTERCO INTERCO TotalPartner PRODUCT Speed Rating T (118 mph 190 km/h) PROFIT PROFIT Revenue Internal Key: 274 1 3 1 10 21 52 13 External Key: 294 1 3 1 10 19 50 9 --------------------------------------------------------- Cell Type: Calculated Consolidated by: TIME:'2014' 12 - Base Descendants UNIT:'G0000' 7 - Base Descendants INTERCO:'TotalPartner' 18 - Base Descendants PRODUCT:'T (118 mph 190 km/h)' 11 - Base Descendants Total consolidated cells: 16632</Alea:CellNote> </Alea:Return> </Alea:Request> </Alea:Document>

---Cell Coordinates -------------------------------
TIME   TIME   2014
VERSION   VERSION   Actual
CURRTYPE   CURRTYPE   USD
LEVEL   LEVEL   IFRS
UNIT   UNIT   G0000
INTERCO   INTERCO   TotalPartner
PRODUCT   Speed Rating   T (118 mph  190 km/h)
PROFIT   PROFIT   Revenue

Depending on the cell type, different information is returned. Next are examples for each of the cell types.

The Cell Coordinates section also includes the internal and external IDs of the elements for all dimensions. The external IDs are for users. The internal IDs are not important to users.

Internal Key:   274   1   3   1   10   21   52   13
External Key:   294   1   3   1   10   19   50   9

The Cell Type: Calculated section provides information about a cell on aggregated level. The section includes the dimensions in which there are aggregated elements. In the Base Descendants dimension there is an aggregated element and it has 12 descendants on base level.

The total number of cells to consolidate is the multiplication of the numbers above. In this example, 12*7*18*11=16.632. OLAP searches for this number of base cells and aggregate the cells.

Consolidated by:
TIME:'2014' 12 - Base Descendants
UNIT:'G0000' 7 - Base Descendants
INTERCO:'TotalPartner' 18 - Base Descendants
PRODUCT:'T (118 mph  190 km/h)' 11 - Base Descendants
Total consolidated cells: 16632

The Cell Type: Calculated section provides information about a cell on aggregated level. The information is the same as for a base level rule.

Cell Type: Calculated
Rule: [PROFIT:'Price per Unit']=[PROFIT:'Revenue']/[PROFIT:'Sales Volume'];
---Optimized Rule References-----------------------
[PROFIT:'Revenue']
[PROFIT:'Sales Volume']

The Cell Type: Basic section provides information about the base cell and its type.

Cell Type: Basic
Numeric Cell

This is a rule on a cell.

Rule: [CURRTYPE:'USD']=IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='A',
  [CURRTYPE:'LC'] / DB('EXRATE',!TIME, !VERSION, 'USD', 'Average rate', 
  DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')),
    IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='E',
      [CURRTYPE:'LC'] / 
      DB('EXRATE',!TIME, !VERSION, 'USD', 'End rate', 
        DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
      ), 
      IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='U',[CURRTYPE:'LC'],
      stet
    )
  )
);

The Optimized Rule References section provides detail on the rule. This information is useful when optimizing rules.

GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')
[CURRTYPE:'LC']
DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')
[CURRTYPE:'LC']
DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')
[CURRTYPE:'LC']
IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='A',
  [CURRTYPE:'LC'] / DB('EXRATE',!TIME, !VERSION, 'USD', 'Average rate', 
  DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')),
    IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='E',
      [CURRTYPE:'LC'] / 
      DB('EXRATE',!TIME, !VERSION, 'USD', 'End rate', 
        DB('UNITCONF',!TIME, !VERSION, !UNIT, 'Currency')
      ), 
      IF(GETATTR('PROFIT', !Profit, 1, 'CurrConTyp')@='U',[CURRTYPE:'LC'],
      stet
    )
  )
)

The Acceleration Flag section describes whether there is an accelerator flag on this cell. If yes, the accelerators are listed in this section.

Acceleration Flag
Targeted by Accelerators:
[MEASURE:'Discounts']>[MEASURE:'Discount in percent']
NO Acceleration Flag
Trigger for Accelerators:
[MEASURE:'Discounts']>[MEASURE:'Discount in percent']

Error

<Alea:Document>
  <Alea:Request RequestID="001">
    <Alea:Error ErrorID="error_code"/>
  </Alea:Request>
</Alea:Document>