Ниже приведён пример изменения настроек алгоритма расчёта, который применяется к срезу данных в регламентном отчёте. В запросе передаётся моникёр для работы с алгоритмами расчёта у среза данных, ключ элемента, соответствующего алгоритму, и новые настройки. В ответе возвращается признак успешного изменения настроек.
{
"UpdateDataAreaExternalTransformations" :
{
"mon" : "FPJHEGEAILDDGOAEBNPJEFNNPNNPCPAELKNIOBNJKIPKLKBE!M!S!PDFCFFHEAILDDGOAECGFLOGBJGLOFCJHEFKJBCNDOFDGMOMON!DataArea!DataSources!1!DataSourceSlices!1!ExternalTransformations",
"tArg" :
{
"its" :
{
"it" :
[
{
"action" :
{
"operation" : "Update"
},
"externalTransformation" :
{
"k" : "1",
"saveDataOption" : "true",
"calculationPeriodMode" : "2"
}
}
]
}
}
}
}
{
"UpdateDataAreaExternalTransformationsResult" : "1"
}
public static bool ChangeAlgorithmWithSlice(string moniker, uint sourceKey, uint sliceKey, uint algoItemKey, int? moveTo = null)
{
var somClient = new SomPortTypeClient(); // Прокси-объект для выполнения операций
// Параметры выполнения операции
var tUpd = new UpdateDataAreaExternalTransformations()
{
tArg = new DataAreaExternalTransformationUpdateActions()
{
its = new DataAreaExternalTransformationUpdateAction[]
{
new DataAreaExternalTransformationUpdateAction()
{
action = new DataAreaExternalTransformationUpdateActionType() { operation = DataAreaExternalTransformationUpdateActionOperation.Update, index = moveTo },
externalTransformation = new DataAreaExternalTransformation()
{
k = algoItemKey,
calculationPeriodMode = 2, // Отметка алгоритма
saveDataOption = true, // Сохранять данные
}
}
}
},
mon = moniker + "!DataArea!DataSources!" + sourceKey + "!DataSourceSlices!" + sliceKey + "!ExternalTransformations"
};
// Добавление алгоритма расчёта для среза данных
var result = somClient.UpdateDataAreaExternalTransformations(tUpd);
return result;
}
См. также: