IMsAggregationTransform.Result

Синтаксис

Result: IMsFormulaTerm;

Описание

Свойство Result возвращает результирующий ряд.

Пример

Sub Main;

Var

MB: IMetabase;

CrInf: IMetabaseObjectCreateInfo;

MObj: IMetabaseObject;

Model: IMsModel;

Trans: IMsFormulaTransform;

Varr: IMsVariable;

VarTrans: IMsFormulaTransformVariable;

Tree: IMsFormulaTransformSlicesTree;

Slice: IMsFormulaTransformSlice;

Selector: IMsFormulaTransformSelector;

Formula: IMsFormula;

Agrr: IMsAggregationTransform;

Coord: IMsFormulaTransformCoord;

Calc: IMsModelCalculation;

Arr: Array Of Double;

i: Integer;

Begin

MB := MetabaseClass.Active;

CrInf := Mb.CreateCreateInfo;

CrInf.ClassId := MetabaseObjectClass.KE_CLASS_MSMODEL;

CrInf.Id := "New_Aggregation";

CrInf.Name := "New_Aggregation";

CrInf.Parent := Mb.ItemById("KONT_MODEL");

CrInf.Permanent := False;

MObj := Mb.CreateObject(CrInf).Edit;

Model := MObj As IMsModel;

Trans := Model.Transform;

Varr := MB.ItemByIdNamespace("Agrr_Var", MB.ItemById("KONT_MODEL").Key).Bind As IMsVariable;

Model.Output.Add(Varr);

VarTrans := Trans.Outputs.Item(0);

Tree := VarTrans.SlicesTree(VarTrans);

Slice := Tree.CreateSlice(1);

Selector := Model.Transform.CreateSelector;

Selector.Slice := Slice;

Formula := Model.Transform.Transform(Selector);

Formula.Kind := MsFormulaKind.Aggregation;

Formula.Level := DimCalendarLevel.Quarter;

Agrr := Formula.Method As IMsAggregationTransform;

Coord := Trans.CreateCoord(VarTrans);

Calc := Model.CreateCalculation;

Calc.Period.IdentificationStartDate := DateTime.ComposeDay(1990, 01, 01);

Calc.Period.IdentificationEndDate := DateTime.ComposeDay(2000, 12, 31);

Calc.Period.ForecastStartDate := DateTime.ComposeDay(2001, 01, 01);

Calc.Period.ForecastEndDate := DateTime.ComposeDay(2010, 12, 31);

Arr := Agrr.Result.Serie(Calc As IMsMethodCalculation);

For i := 0 To Arr.Length - 1 Do

Debug.WriteLine(Arr[i]);

End For;

MObj.Save;

End Sub Main;

После выполнения примера в контейнере моделирования будет создана модель, осуществляющая агрегацию/дезагригацию данных моделируемой переменной. Агрегация осуществляется по уровню Кварталы. Переменная "Agrr_Var" должна быть настроена соответствующим образом. После этого в консоль будет выведен ряд данных, полученных в результате работы модели.

См. также:

IMsAggregationTransform