IMsTimeMatrix.AlignedDate

Синтаксис Fore

AlignedDate(Value: DateTime;
           [Forward: Boolean = true;]
           [ThrowException: Boolean = true]): DateTime;

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

AlignedDate[Value: System.DateTime;
           Forward: boolean;
           ThrowException: boolean]: System.DateTime;

Параметры

Value. Проверяемая дата;

Forward. Направление сдвига календаря;

ThrowException. Признак того, будет ли генерироваться исключительная ситуация, если проверяемая дата выходит за пределы дат ряда. Возможные значения:

Описание

Свойство AlignedDate возвращает ближайшую корректную дату.

Комментарии

Если проверяемая дата является выходным днем, то метод вернет ближайшую корректную дату в зависимости от значения параметра Forward:

Если проверяемая дата является рабочим днем, то метод вернет проверяемую дату без изменения.

Пример Fore

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

Для выполнения примера добавьте ссылки на системные сборки Ms.

Public Function UserAlignedDate(param: IMsTimeMatrix): Variant;
Var 
    m : IMsTimeMatrix;
    i : Integer;
    IndDate: DateTime;
Begin
    m := New MsTimeMatrix.Create;
    For i := m.StartIndex To m.EndIndex Do
        IndDate := m.IndexToDate(i);
        If m.AlignedDate(IndDate) = IndDate Then
            Debug.WriteLine(m.Item(i));
        End If;
    End For;
    Return m;
End Function UserAlignedDate;

В результате выполнения примера в окно консоли будут выведены значения точек рядов матрицы, если ближайшая корректная дата совпадет с датой, полученной в результате перевода индекса в дату.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Ms;

Public Function UserAlignedDate(param: IMsTimeMatrix): object;
Var 
    m : IMsTimeMatrix;
    i : Integer;
    IndDate: DateTime;
Begin
    m := New MsTimeMatrix.Create();
    For i := m.StartIndex To m.EndIndex Do
        IndDate := m.IndexToDate(i);
        If m.AlignedDate[IndDate, TrueTrue] = IndDate Then
            System.Diagnostics.Debug.WriteLine(m.Item[i]);
        End If;
    End For;
    Return m;
End Function UserAlignedDate;

См. также:

IMsTimeMatrix