PivotMetaData GetPivotMetaData(string mon, PivotMetaData tArg)
mon. Моникёр для работы с основой среза данных.
tArg. Параметры получения информации об основе среза.
Операция GetPivotMetaData получает основу для построения среза источника аналитической области данных.
Операция позволяет получить различные настройки, которые влияют на формирование среза и извлечение данных. Для выполнения операции укажите в поле mon моникёр экземпляра регламентного отчёта с постфиксом «!DataArea!DataSources!<ключ источника>!DataSourceSlices!<ключ среза>!Pivot» для работы с основой среза, а в поле tArg укажите извлекаемые настройки.
Моникёр может быть получен при выполнении операции OpenPrxMeta.
В поле tArg задайте пустые значения или значения по умолчанию для тех полей, значения которых необходимо получить. Для коллекций укажите один элемент. Для получения информации о каком-либо конкретном элементе укажите его ключ в метаданных. При указании в качестве ключа значения «-1» будет получена информация обо всех элементах данного типа.
Ниже приведён пример получения информации об основе среза источника данных. В запросе передаётся моникёр для работы с основой среза данных и список полей, значения которых необходимо получить. В ответе приходит запрошенная информация.
{
"GetPivotMetaData" :
{
"mon" : "FCJKECDEBBGOFOAENKBHCHAOHGPDFHHEPJAKMBIGJNLFCJOB!M!S!PLHCGKDDEBBGOFOAENCPCGCHBJGOFDLNEIJMPDIHNAGKFLNGA!DataArea!DataSources!1!DataSourceSlices!1!Pivot",
"tArg" :
{
"dims" :
{
"its" :
{
"it" :
[
{
"k" : "-1",
"id" : "",
"n" : "",
"position" : "Unknown",
"index" : "0"
}
]
}
}
}
}
}
{
"GetPivotMetaDataResult" :
{
"dims" :
{
"its" :
{
"it" :
[
{
"k" : "5858",
"id" : "FACTS",
"n" : "Факты",
"position" : "Fixed",
"index" : "0"
},
{
"k" : "112",
"id" : "CALENDAR",
"n" : "Календарь",
"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(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
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"
};
//Получение информации об основе среза
var result = somClient.GetPivotMetaData(tGet);
return result;
}
См. также: