ITsCalendarSettings.IsDateEnd

Синтаксис Fore

IsDateEnd(Level:DimCalendarLevel): Boolean;

Синтаксис Fore.NET

IsDateEnd[Level: Prognoz.Platform.Interop.Dimensions.DimCalendarLevel]: boolean;

Параметры

Level. Уровень календаря.

Описание

Свойство IsDateEnd определяет, заменять ли дату начала периода датой конца периода для указанного уровня календаря.

Комментарии

Возможные значения IsDateEnd:

Смещение доступно для следующих уровней:

Для указания количества дней, на которое будет выполнено смещение даты начала периода используйте свойство ITsCalendarSettings.OffsetDate.

Пример Fore

В данном примере приведен пользовательский векторный метод расчета. Для выполнения примера добавьте ссылки на системные сборки «Dimensions», «Ms», «Transform».

Function OffsetDate(Input: ITimeSeries): ITimeSeries;
Var
    pContext: ITsCalculationContext;
    i: Integer;
    pSeries: ITimeSeries;
    CalendSett: ITsCalendarSettings;
Begin
    pContext := TsCalculation.Current;
    pSeries := pContext.CreateTimeSeries;
    CalendSett := Input.CalendarSettings;
    If (CalendSett.IsDateEnd(DimCalendarLevel.Year)) And (CalendSett.OffsetDate(DimCalendarLevel.Year) = 1Then
        For i := Input.StartIndex To Input.EndIndex Do
            pSeries.Item(i) := 1 + Input.Item(i);
        End For;
    Else
        pContext.RaiseWarning("Используемые календарные параметры не подходят для вычисления метода");
    End If;
    Return pSeries;
End Function OffsetDate;

Метод выполняет увеличение значений входного ряда, если используется смещение годового календарного уровня на год от конца календаря.

Пример Fore.NET

В данном примере приведен пользовательский векторный метод расчета.

Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Ms;
Imports Prognoz.Platform.Interop.Transform;

Function OffsetDate(Input: ITimeSeries): ITimeSeries;
Var
    TsCalc: TsCalculation;
    pContext: ITsCalculationContext;
    i: Integer;
    pSeries: ITimeSeries;
    CalendSett: ITsCalendarSettings;
Begin
    TsCalc := New TsCalculation.Create();
    pContext := TsCalc.Current[Null];
    pSeries := pContext.CreateTimeSeries(-1 As DimCalendarLevel, NullAs ITimeSeries;
    CalendSett := Input.CalendarSettings;
    If (CalendSett.IsDateEnd[DimCalendarLevel.dclYear]) And (CalendSett.OffsetDate[DimCalendarLevel.dclYear] = 1Then
        For i := Input.StartIndex To Input.EndIndex Do
            pSeries.Item[i] := 1 + (Input.Item[i] As double);
        End For;
    Else
        pContext.RaiseWarning("Используемые календарные параметры не подходят для вычисления метода");
    End If;
    Return pSeries;
End Function OffsetDate;

Метод выполняет увеличение значений входного ряда, если используется смещение годового календарного уровня на год от конца календаря.

См. также:

ITsCalendarSettings