CreateLevel(CalendarLevel: DimCalendarLevel);
CreateLevel(
CalendarLevel: Prognoz.Platform.Interop.Dimensions.DimCalendarLevel;
Context: Prognoz.Platform.Interop.Fore.ForeRuntimeContext);
CalendarLevel. Календарная динамика ряда;
Context. Контекст. Актуален только для Fore.NET.
Конструктор CreateLevel создает ряд с заданной календарной динамикой.
Для создания ряда без дополнительных параметров используйте конструктор по умолчанию: TimeSeries.Create.
В примере приведен пользовательский векторный метод расчета. Для выполнения примера добавьте ссылки на системные сборки «Dimensions», «Ms».
Function TimeCalendLvl(Input: ITimeSeries): ITimeSeries;
Var
i: Integer;
pSeries: ITimeSeries;
Begin
pSeries := New TimeSeries.CreateLevel(DimCalendarLevel.Year);
If pSeries.CheckCompatible(Input, True) Then
For i := pSeries.StartIndex To pSeries.EndIndex Do
pSeries.Item(i) := 1 + Input.Item(i);
End For;
End If;
Return pSeries;
End Function TimeCalendLvl;
Метод выполняет увеличение значений входного ряда, если он совместим с контекстом пользовательского метода расчета.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Ms;
…
Public Function TimeCalendLvl(Input: TimeSeries): ITimeSeries;
Var
i: Integer;
pSeries: ITimeSeries;
Begin
pSeries := New TimeSeriesClass.Create();
pSeries.CreateLevel(DimCalendarLevel.dclYear, Null);
If pSeries.CheckCompatible(Input, True) Then
For i := pSeries.StartIndex To pSeries.EndIndex Do
pSeries.Item[i] := 1 + (Input.Item[i] As double);
End For;
End If;
Return pSeries;
End Function TimeCalendLvl;
См. также: