PrxMetaResult GetPrxMeta(string mon, PrxMetaArg tArg)
mon. Моникёр открытого экземпляра регламентного отчёта.
tArg. Параметры выполнения операции.
Операция GetPrxMeta извлекает метаданные регламентного отчёта.
Операция позволяет получить настройки различных элементов регламентного отчёта. Для выполнения операции укажите в поле mon моникёр открытого экземпляра регламентного отчёта, а в поле tArg параметры извлечения метаданных.
Моникёр может быть получен при выполнении операции OpenPrxMeta.
В поле tArg.meta задайте пустые значения или значения по умолчанию для тех полей, значения которых необходимо получить. Для коллекций укажите один элемент. Для получения информации о каком-либо конкретном элементе регламентного отчёта укажите его ключ в метаданных. При указании в качестве ключа значения «-1» будет получена информация обо всех элементах данного типа.
Ниже приведён пример получения информации о листах регламентного отчёта. В запросе передаётся моникёр для работы с регламентным отчётом и список полей, значения которых необходимо получить. В ответе приходит запрошенная информация.
{
"GetPrxMeta" :
{
"mon" : "S1!M!S!P1",
"tArg" :
{
"meta" :
{
"sheets" :
{
"its" :
{
"it" :
[
{
"k" : "-1",
"n" : "",
"type" : "Table"
}
]
}
}
}
}
}
}
{
"GetPrxMetaResult" :
{
"id" :
{
"id" : "S1!M!S!P1"
},
"meta" :
{
"sheets" :
{
"its" :
{
"it" :
[
{
"k" : "1",
"n" : "Данные",
"type" : "Table"
}
]
}
}
}
}
}
public static PrxMetaResult GetPrxSheets(string moniker)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tGet = new GetPrxMeta()
{
tArg = new PrxMetaArg()
{
meta = new PrxMetaData()
{
sheets = new PrxMetaSheets()
{
its = new PrxMetaSheet[1]
{
new PrxMetaSheet() { k = uint.MaxValue, n= "", type = PrxSheetType.Table }
}
}
}
},
mon = moniker
};
//Получение информации о листах отчёта
var result = somClient.GetPrxMeta(tGet);
return result;
}
См. также: