ApplySelControlResult ApplySelControl(AlgId tAlg, ApplySelControlArg tArg)
tAlg. Моникёр экземпляра алгоритма расчёта показателей или его блока.
tArg. Параметры выполнения операции.
Операция ApplySelControl управляет отметкой зависимых измерений.
Операция позволяет получать список измерений источника/приёмника, а также при передаче отметки какого-либо измерения получать перестроенные зависимые измерения. Для выполнения операции укажите в поле tAlg моникёр алгоритма расчёта или его блока, а в поле tArg параметры выполнения операции. Моникёр может быть получен при выполнении операции OpenAlg.
Если в поле tArg.selections передаётся пустая коллекция, то в ответе будет получен список отметок измерений.
Если в поле tArg.selections передаётся какая-либо отметка, то в ответе будут получены переоткрытые управляемые измерения с учётом переданной отметки.
Ниже приведён пример получения списка измерений куба-источника, используемого в алгоритме расчёта. В запросе передаётся моникёр алгоритма расчёта и ключ куба. В ответе приходит общая информация об измерениях, а также информация о наличии управляемых и управляющих измерениях.
{
"ApplySelControl" :
{
"tAlg" :
{
"id" : "S1!M!S!C10"
},
"tArg" :
{
"stubKey" : "293668",
"selections" : ""
}
}
}
{
"ApplySelControlResult" :
{
"selections" :
{
"it" :
[
{
"dimension" :
{
"k" : "293670",
"id" : "FACTS",
"n" : "Факты",
"vis" : "1",
"desc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "1",
"@hf" : "0",
"i" : "FACTS",
"n" : "Факты",
"k" : "293670",
"c" : "1028",
"p" : "293668",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
}
},
"selectionId" : "S1!M!S!C11",
"tag" : ""
},
{
"dimension" :
{
"k" : "293663",
"id" : "OBJ293663",
"n" : "Типы договоров",
"vis" : "1",
"desc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "4",
"@hf" : "0",
"i" : "OBJ293663",
"n" : "Типы договоров",
"k" : "293663",
"c" : "3076",
"p" : "293662",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
}
},
"selectionId" : "S1!M!S!C12",
"tag" : ""
},
{
"dimension" :
{
"k" : "293665",
"id" : "OBJ293665",
"n" : "Договора",
"vis" : "1",
"desc" :
{
"@ds" : "",
"@isShortcut" : "0",
"@isLink" : "0",
"@ver" : "4",
"@hf" : "0",
"i" : "OBJ293665",
"n" : "Договора",
"k" : "293665",
"c" : "3076",
"p" : "293662",
"h" : "0",
"hasPrv" : "0",
"ic" : "0",
"trackElementDependents" : "0"
}
},
"selectionId" : "S1!M!S!C13",
"tag" : ""
}
]
},
"dependencies" :
{
"it" :
{
"ownerDimKey" : "293663",
"ownedDimKeys" :
{
"l" : "293665"
}
}
}
}
}
public static ApplySelControlResult GetApplySelDims(string moniker, uint key)
{
var somClient = new SomPortTypeClient(); //Прокси-объект для выполнения операций
//Параметры выполнения операции
var tApply = new ApplySelControl()
{
tAlg = new AlgId() { id = moniker },
tArg = new ApplySelControlArg()
{
stubKey = key,
selections = new AlgDimSelection[0]
}
};
//Получение списка измерений
var result = somClient.ApplySelControl(tApply);
return result;
}
См. также: