IDimIndexesInstance.SelectionIndex

Синтаксис Fore

SelectionIndex: IDimIndexInstance;

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

SelectionIndex: Prognoz.Platform.Interop.Dimensions.IDimIndexInstance;

Описание

Свойство SelectionIndex возвращает индекс, который используется для формирования отметки.

Комментарии

Подобный индекс используется для сохранения и восстановления отметки по измерению, основанному на справочнике.

Пример Fore

Для выполнения примера в репозитории предполагается наличие справочника НСИ с идентификатором «USE_IN_SELECTION». Данный справочник должен содержаться вне репозитория НСИ и использоваться в качестве измерения в базе данных временных рядов.

Добавьте ссылки на системные сборки: Dimensions, Metabase.

Sub UseProc;
Var
    mb: IMetabase;
    DimInst: IDimInstance;
    Indexes: IDimIndexesInstance;
    Index: IDimIndexInstance;
    Attr: IDimAttribute;
Begin
    // Получаем текущий репозиторий
    mb := MetabaseClass.Active;
    // Получаем справочник
    DimInst := mb.ItemById("USE_IN_SELECTION").Open(NullAs IDimInstance;
    // Получаем индексы справочника
    Indexes := DimInst.Indexes;
    // Получаем индекс справочника, который используется для формирования отметки
    Index := Indexes.SelectionIndex;
    // Выводим информацию об индексе в окно консоли
    If Index <> Null Then
        Debug.WriteLine("Наименование индекса: " + Index.Index.Name);
        Debug.WriteLine(Index.CaseSensitive ? "Индекс регистрозависимый" : "Индекс регистронезависимый");
        Debug.WriteLine("Атрибуты в составе индекса:");
        For Each Attr In Index.Index.Attributes Do
            Debug.WriteLine("    " + Attr.Name);
        End For;
    End If;
End Sub UseProc;

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

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Dimensions;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    DimInst: IDimInstance;
    Indexes: IDimIndexesInstance;
    Index: IDimIndexInstance;
    Attr: IDimAttribute;
Begin
    // Получаем текущий репозиторий
    mb := Params.Metabase;
    // Получаем справочник
    DimInst := mb.ItemById["USE_IN_SELECTION"].Open(NullAs IDimInstance;
    // Получаем индексы справочника
    Indexes := DimInst.Indexes;
    // Получаем индекс справочника, который используется для формирования отметки
    Index := Indexes.SelectionIndex;
    // Выводим информацию об индексе в окно консоли
    If Index <> Null Then
        System.Diagnostics.Debug.WriteLine("Наименование индекса: " + Index.Index.Name);
        System.Diagnostics.Debug.WriteLine(Index.CaseSensitive ? "Индекс регистрозависимый" : "Индекс регистронезависимый");
        System.Diagnostics.Debug.WriteLine("Атрибуты в составе индекса:");
        For Each Attr In Index.Index.Attributes Do
            System.Diagnostics.Debug.WriteLine("    " + Attr.Name);
        End For;
    End If;
End Sub;

См. также:

IDimIndexesInstance