IMsFormulaTransform.CreateCalculation

Синтаксис

CreateCalculation: IMsMethodCalculation;

Описание

Метод CreateCalculation создает объект, определяющий параметры, необходимые при расчёте модели с помощью выбранного метода.

Пример

Для выполнения примера предполагается наличие контейнера моделирования с идентификатором «KONT_MODEL». В данном контейнере должна присутствовать модель с идентификатором «Model_1».

Sub Main;

Var

MB: IMetabase;

Model: IMsModel;

Transform: IMsFormulaTransform;

VarTrans: IMsFormulaTransformVariable;

Tree: IMsFormulaTransformSlicesTree;

Slice: IMsFormulaTransformSlice;

Selector: IMsFormulaTransformSelector;

Formula: IMsFormula;

LinReg: IMsLinearRegressionTransform;

Coord: IMsFormulaTransformCoord;

Calc: IMsMethodCalculation;

CalcRes: IMsModelCalculationResult;

Begin

MB := MetabaseClass.Active;

Model := MB.ItemByIdNamespace("Model_1", MB.ItemById("KONT_MODEL").Key).Bind As IMsModel;

Transform := Model.Transform;

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

Tree := VarTrans.SlicesTree(VarTrans);

Slice := Tree.CreateSlice(1);

Selector := Model.Output.Item(0).Transform.CreateSelector;

Selector.Slice := Slice;

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

LinReg := Formula.Method As IMsLinearRegressionTransform;

Coord := Model.Transform.CreateCoord(VarTrans);

Calc := Model.Transform.CreateCalculation;

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

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

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

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

CalcRes := LinReg.Execute(Calc, Coord);

End Sub Main;

После выполнения примера будет осуществлен расчёт модели с идентификатором «Model_1». Расчёт осуществляется по измерению «Факт» моделируемой переменной. Если в переменной имеются дополнительные измерения, то расчёт будет производиться по первым элементам этих измерений.

См. также:

IMsFormulaTransform