IModelling.Rebase

Syntax

Rebase(Input: ITimeSeries;

BaseDate: String;

[BasePeriod: DimCalendarLevel = 1;]

[BaseValue: Integer = 100]): Variant;

Parameters

Input. Variable.

BaseDate. Date, relative to which the function is calculated.

BasePeriod. Calendar frequency for function. Optional parameter. The default value: DimCalendarLevel.Year - annual frequency.

BaseValue. Base value for function calculation. Optional parameter. The default value is 100.

Description

The Rebase method applies the Rebase function to selected variable.

Fore Example

Executing the example requires that the repository contains a modeling container with the MS identifier. A model with the MODEL_D identifier calculated by the method of determinate equation and containing at least one input variable must be available in this container.

Sub UserProc;

Var

Mb: IMetabase;

ModelSpace, ModelObj: IMetabaseObject;

Transf: IMsFormulaTransform;

Formula: IMsFormula;

Model: IMsModel;

Determ: IMsDeterministicTransform;

TransVar: IMsFormulaTransformVariable;

Slice: IMsFormulaTransformSlice;

TermInfo: IMsFormulaTermInfo;

Expr: IExpression;

Begin

Mb := MetabaseClass.Active;

ModelSpace := Mb.ItemById("MS").Bind;

ModelObj := Mb.ItemByIdNamespace("MODEL_D", ModelSpace.Key).Edit;

Model := ModelObj As IMsModel;

Transf := Model.Transform;

Formula := Transf.FormulaItem(0);

Determ := Formula.Method As IMsDeterministicTransform;

TransVar := Transf.Inputs.Item(0);

Slice := TransVar.Slices.Item(0);

TermInfo := Transf.CreateTermInfo;

TermInfo.Slice := Slice;

TermInfo.Type := MsFormulaTermType.Pointwise;

Expr := Determ.Expression;

Expr.References := "Ms";

Expr.AsString := "Rebase(" + TermInfo.TermInnerText + ", "+""""+"01.01.2006"+""""+")";

If Expr.Valid

Then ModelObj.Save;

Else Debug.WriteLine(The model is not saved: error in the formula);

End If;

End Sub UserProc;

After executing the example the model transforms the first input variable using the Rebase function.

Example of Use in Expressions

Expression 1:

Rebase({Brazil|BCA},"2005A")

Result: the Rebase function is applied for the Brazil|BCA factor.

Use: it can be used in formulas of calculated series of time series database and model formulas of modeling container that is a child of the time series database.

Expression 2:

Rebase(X1,"2000A")

Result: the Rebase function is applied for the X1 factor.

Use: it can be used in model formulas of modeling container.

See also:

IModelling