IFormulaTransformModel.IdentificationStartDateParamId

Fore Syntax

IdentificationStartDateParamId: String;

Fore.NET Syntax

IdentificationStartDateParamId: string;

Description

The IdentificationStartDateParamId property determines an identifier of the parameter setting the sample period start date.

Comments

To determine a parameter setting the sample period end date, use the IFormulaTransformModel.IdentificationEndDateParamId property.

Fore Example

Executing the example requires a form containing the LanerBox component with the LanerBox1 identifier and the UiErAnalayzer component with the UiErAnalayzer1 identifier, which is a data source for LanerBox1. UiErAnalayzer1 must contain a workbook of the time series database containing calculated series and parameters of the Date and Time types with the following identifiers: IDENT_START, IDENT_END, FORECAST_START, FORECAST_END.

Add links to the Cubes, Dal, Metabase, Transform system assemblies.

Before executing the example select one calculated series in LanerBox1.

Sub CalcSeriesPerams;
Var
    Eax: IEaxAnalyzer;
    ParamsProv: ITsParamProvider;
    ParamVals: ITsModelParamValues;
    pVal: ITsModelParamValue;
    Laner: ILaner;
    Series: ILanerSerie;
    CalcSerie: ILanerCalculateSerie;
    TransformModel: IFormulaTransformModel;
Begin
    Eax := UiErAnalyzer1.ErAnalyzer;
    // Get object for working with parameters
    ParamsProv := Eax.ParamProvider As ITsParamProvider;
    // Set parameters value
    ParamVals := ParamsProv.ParamValues;
    // Sample start
    pVal := ParamVals.FindById("IDENT_START");
    pVal.Value := DateTime.Parse("01.01.2003");
    // Sample end
    pVal := ParamVals.FindById("IDENT_END");
    pVal.Value := DateTime.Parse("31.12.2007");
    // Forecast start
    pVal := ParamVals.FindById("FORECAST_START");
    pVal.Value := DateTime.Parse("01.01.2008");
    // Forecast end
    pVal := ParamVals.FindById("FORECAST_END");
    pVal.Value := DateTime.Parse("01.01.2015");
    // Get calculated series 
    Series := LanerBox1.SelectedSeries(0);
    CalcSerie := Series As ILanerCalculateSerie;
    TransformModel := CalcSerie.Transform;
    TransformModel.AutoPeriod := TransformModelAutoPeriodOptions.None;
    TransformModel.PeriodSet := TransformModelPeriodSet.All;
    TransformModel.UsePeriod := True;
    // Set parameters for series calculation period
    TransformModel.IdentificationStartDateParamId := "IDENT_START";
    TransformModel.IdentificationEndDateParamId := "IDENT_END";
    TransformModel.ForecastStartDateParamId := "FORECAST_START";
    TransformModel.ForecastEndDateParamId := "FORECAST_END";
    // Update data
    Laner := Eax.Laner;
    Laner.Refresh;
    CalcSerie.Calculate;
End Sub CalcSeriesPerams;

Example execution result: for the calculated series selected in the LanerBox1 component the calculation period parameters will be determined by the following parameters: IDENT_START, IDENT_END, FORECAST_START, FORECAST_END.

Fore.NET Example

The requirements and result of the Fore.NET example execution match with those in the Fore example. Use Fore.NET analogs instead of Fore components.

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dal;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Laner;
Imports Prognoz.Platform.Interop.Transform;

Public Sub CalcSeriesPerams();
Var
    Eax: IEaxAnalyzer;
    ParamsProv: ITsParamProvider;
    ParamVals: ITsModelParamValues;
    pVal: ITsModelParamValue;
    Laner: ILaner;
    Series: ILanerSerie;
    CalcSerie: ILanerCalculateSerie;
    TransformModel: IFormulaTransformModel;
Begin
    Eax := uiErAnalyzerNet1.ErAnalyzer.ErAnalyzer;
    // Get object for working with parameters
    ParamsProv := Eax.ParamProvider As ITsParamProvider;
    // Set parameters value
    ParamVals := ParamsProv.ParamValues;
    // Sample start
    pVal := ParamVals.FindById("IDENT_START");
    pVal.Value := DateTime.Parse("01.01.2003");
    // Sample end
    pVal := ParamVals.FindById("IDENT_END");
    pVal.Value := DateTime.Parse("31.12.2007");
    // Forecast start
    pVal := ParamVals.FindById("FORECAST_START");
    pVal.Value := DateTime.Parse("01.01.2008");
    // Forecast end
    pVal := ParamVals.FindById("FORECAST_END");
    pVal.Value := DateTime.Parse("01.01.2015");
    // Get calculated series 
    Series := lanerBoxNet1.SelectedSeries[0];
    CalcSerie := Series As ILanerCalculateSerie;
    TransformModel := CalcSerie.Transform;
    TransformModel.AutoPeriod := TransformModelAutoPeriodOptions.tmapoNone;
    TransformModel.PeriodSet := TransformModelPeriodSet.tmpsAll;
    TransformModel.UsePeriod := True;
    // Set parameters for series calculation period
    TransformModel.IdentificationStartDateParamId := "IDENT_START";
    TransformModel.IdentificationEndDateParamId := "IDENT_END";
    TransformModel.ForecastStartDateParamId := "FORECAST_START";
    TransformModel.ForecastEndDateParamId := "FORECAST_END";
    // Update data
    Laner := Eax.Laner;
    Laner.Refresh();
    CalcSerie.Calculate();
End Sub CalcSeriesPerams;

See also:

IFormulaTransformModel