GetPivotMetaData

Syntax

PivotMetaData GetPivotMetaData(string mon, PivotMetaData tArg)

Parameters

mon. Moniker for working with base of data slice.

tArg. Parameters for getting information about slice base.

Description

The GetPivotMetaData operation gets base for creating a data source slice of analytical data area.

Comments

The operation gets various settings that affect creating a slice and getting data. To execute the operation, in the mon field specify regular report instance moniker with the !DataArea!DataSources!<data source key>!DataSourceSlices!<slice key>!Pivot postfix to work with slice base, and in the tArg field specify settings to be obtained.

The moniker can be obtained on executing the OpenPrxMeta operation.

In the tArg field set empty values or default values for the fields, which values should be obtained. Specify one element for collections. To get information about a specific element, specify its key in metadata. If -1 is specified as a key value, information about all elements of this type is obtained.

Example

Below is the example of getting information about data source slice base. The request contains moniker for working with data slice base and a list of the fields, which values should be obtained. The response contains requested information.

SOAP request:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<GetPivotMetaData xmlns="http://www.fsight.ru/PP.SOM.Som">
  <mon xmlns="">FCJKECDEBBGOFOAENKBHCHAOHGPDFHHEPJAKMBIGJNLFCJOB!M!S!PLHCGKDDEBBGOFOAENCPCGCHBJGOFDLNEIJMPDIHNAGKFLNGA!DataArea!DataSources!1!DataSourceSlices!1!Pivot</mon>
<tArg xmlns="">
<dims>
<its>
<it>
  <k>-1</k>
  <id />
  <n />
  <position>Unknown</position>
  <index>0</index>
  </it>
  </its>
  </dims>
  </tArg>
  </GetPivotMetaData>
  </s:Body>
  </s:Envelope>

SOAP response:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<GetPivotMetaDataResult xmlns="http://www.fsight.ru/PP.SOM.Som" xmlns:q1="http://www.fsight.ru/PP.SOM.Som" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<dims xmlns="">
<its>
<it>
  <k>5858</k>
  <id>FACTS</id>
  <n>Facts</n>
  <position>Fixed</position>
  <index>0</index>
  </it>
<it>
  <k>112</k>
  <id>CALENDAR</id>
  <n>Calendar</n>
  <position>Top</position>
  <index>0</index>
  </it>
<it>
  <k>116</k>
  <id>DIM_1</id>
  <n>Dim_1</n>
  <position>Left</position>
  <index>0</index>
  </it>
<it>
  <k>991</k>
  <id>DIM_2</id>
  <n>Dim_2</n>
  <position>Fixed</position>
  <index>1</index>
  </it>
  </its>
  </dims>
  <drillThrough xmlns="">0</drillThrough>
  </GetPivotMetaDataResult>
  </soapenv:Body>
  </soapenv:Envelope>

JSON request:

{
"GetPivotMetaData" :
{
"mon" : "FCJKECDEBBGOFOAENKBHCHAOHGPDFHHEPJAKMBIGJNLFCJOB!M!S!PLHCGKDDEBBGOFOAENCPCGCHBJGOFDLNEIJMPDIHNAGKFLNGA!DataArea!DataSources!1!DataSourceSlices!1!Pivot",
"tArg" :
{
"dims" :
{
"its" :
{
"it" :
[
{
"k" : "-1",
"id" : "",
"n" : "",
"position" : "Unknown",
"index" : "0"
}
]
}
}
}
}
}

JSON response:

{
"GetPivotMetaDataResult" :
{
"dims" :
{
"its" :
{
"it" :
[
{
"k" : "5858",
"id" : "FACTS",
"n" : "Facts",
"position" : "Fixed",
"index" : "0"
},
{
"k" : "112",
"id" : "CALENDAR",
"n" : "Calendar",
"position" : "Top",
"index" : "0"
},
{
"k" : "116",
"id" : "DIM_1",
"n" : "Dim_1",
"position" : "Left",
"index" : "0"
},
{
"k" : "991",
"id" : "DIM_2",
"n" : "Dim_2",
"position" : "Fixed",
"index" : "1"
}
]
}
},
"drillThrough" : "0"
}
}
public static PivotMetaData GetPivotInfo(string moniker, uint dataSourceKey, uint sliceKey)
{
var somClient = new SomPortTypeClient(); //Proxy object for operation execution
//Operation execution parameters
var tGet = new GetPivotMetaData()
{
tArg = new PivotMetaData()
{
dims = new PivotDimensions()
{
its = new PivotDimension[1]
{
new PivotDimension()
{
k = uint.MaxValue,
id = "",
n = "",
position = PvtDimPos.Unknown,
index = 0
}
}
}
},
mon = moniker + "!DataArea!DataSources!" + dataSourceKey.ToString() + "!DataSourceSlices!" + sliceKey.ToString() + "!Pivot"
};
//Get information about slice base
var result = somClient.GetPivotMetaData(tGet);
return result;
}

See also:

Working With Regular Reports