IDimIndexInstance.UseInSelection

Синтаксис Fore

UseInSelection: Boolean;

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

UseInSelection: Boolean;

Описание

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

Комментарии

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

Пример Fore

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

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

Sub UserProc;
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;
    // Перебираем индексы справочника
    For Each Index In Indexes Do
        // Если индекс используется для формирования отметки,
        // то выводим в окно консоли информацию о нём
        If Index.UseInSelection 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 For;
End Sub UserProc;

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

Пример 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;
    // Перебираем индексы справочника
    For Each Index In Indexes Do
        // Если индекс используется для формирования отметки,
        // то выводим в окно консоли информацию о нём
        If Index.UseInSelection 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 For;
End Sub;

См. также:

IDimIndexInstance