IDimIndexInstanceLookup.Level

Синтаксис Fore

Level: Integer;

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

Level: uinteger;

Описание

Свойство Level определяет уровень справочника, в котором выполняется поиск элемента.

Комментарии

Если свойство принимает значение «-1», то поиск выполняется независимо от уровня.

Пример Fore

Для выполнения примера в репозитории необходимо наличие табличного справочника с идентификатором «DIM_SEP», который состоит из двух уровней.

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

Sub UserProc;
Var
    mb: IMetabase;
    instance: IDimInstance;
    indexesinstance: IDimIndexesInstance;
    indexinstance: IDimIndexInstance;
    instlook: IDimIndexInstanceLookup;
    arr, arr1: array Of Variant;
    i, c: integer;
Begin
    // Получим репозиторий
    mb := MetabaseClass.Active;
    // Получим доступ к данным справочника
    instance := mb.ItemById("DIM_SEP").Open(NullAs IDimInstance;
    // Создадим массивы для поиска
    Arr := New Variant[1];
    Arr1 := New Variant[1];
    // Получим коллекцию индексов справочника
    indexesinstance := instance.Indexes;
    // Получим первый индекс справочника
    indexinstance := indexesinstance.Item(0);
    // Создадим объект для поиска элементов справочника
    instlook := indexinstance.CreateDimIndexLookup;
    // Зададим уровень для поиска
    instlook.Level := 2;
    // Найдем элементы «1000» и «1020»
    Arr[0] := 1000;
    Arr1[0] := 1020;
    // Получим порядковый номер элемента
    i := indexinstance.LookUp(Arr);
    // Получим порядковый номер элемента
    c := indexinstance.LookUp(Arr1);
    // Выведем порядковый номер в окно консоли
    Debug.WriteLine("Порядковый номер найденного элемента = " + i.ToString);
    // Выведем порядковый номер в окно консоли
    Debug.WriteLine("Порядковый номер найденного элемента = " + c.ToString);
End Sub UserProc;

После выполнения примера в окно консоли выведутся порядковые номера найденных элементов.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Dimensions;

Public
 Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    instance: IDimInstance;
    indexesinstance: IDimIndexesInstance;
    indexinstance: IDimIndexInstance;
    instlook: IDimIndexInstanceLookup;
    arr, arr1: array Of object;
    i, c: uinteger;
Begin
    // Получим репозиторий
    mb := Params.Metabase;
    // Получим доступ к данным справочника
    instance := mb.ItemById["DIM_SEP"].Open(NullAs IDimInstance;
    // Создадим массивы для поиска
    Arr := New object[1];
    Arr1 := New object[1];
    // Получим коллекцию индексов справочника
    indexesinstance := instance.Indexes;
    // Получим первый индекс справочника
    indexinstance := indexesinstance.Item[0];
    // Создадим объект для поиска элементов справочника
    instlook := indexinstance.CreateDimIndexLookup();
    // Зададим уровень для поиска
    instlook.Level := 2;
    // Найдем элементы «1000» и «1020»
    Arr[0] := 1000;
    Arr1[0] := 1020;
    // Получим порядковый номер элемента
    i := indexinstance.LookUp(Arr);
    // Получим порядковый номер элемента
    c := indexinstance.LookUp(Arr1);
    // Выведем порядковый номер в окно консоли
    System.Diagnostics.Debug.WriteLine("Порядковый номер найденного элемента = " + i.ToString());
    // Выведем порядковый номер в окно консоли
    System.Diagnostics.Debug.WriteLine("Порядковый номер найденного элемента = " + c.ToString());
End Sub;

См. также:

IDimIndexInstanceLookup