IDimAttributeHierarchyInstance.AttributeHierarchy

Синтаксис Fore

AttributeHierarchy: IDimAttributeHierarchy;

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

AttributeHierarchy: Prognoz.Platform.Interop.Dimensions.IDimAttributeHierarchy;

Описание

Свойство AttributeHierarchy возвращает данные альтернативной иерархии атрибута.

Комментарии

Для получения коллекции данных альтернативной иерархии справочника используйте IDimInstance.AttributeHierarchies.

Пример Fore

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

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

Sub UserProc;
Var
    mb: IMetabase;
    diminstance: IDimInstance;
    attrhierarchy: IDimAttributeHierarchy;
    attrhierarchies: IDimAttributeHierarchiesInstance;
    attrhierinstance: IDimAttributeHierarchyInstance;
    attrhierinstance1: IDimAttributeHierarchyInstance;
    id, name: string;
Begin
    // Получим репозиторий
    mb := MetabaseClass.Active;
    // Получим данные справочника
    diminstance := mb.ItemById("DIM_SEP").Open(NullAs IDimInstance;
    // Получим данные альтернативной иерархии
    attrhierinstance := diminstance.AttributeHierarchies.HierarchyItem(0);
    // Получим альтернативную иерархию
    attrhierarchy := attrhierinstance.AttributeHierarchy;
    // Получим идентификатор альтернативной иерархии и выведем в окно консоли
    id := attrhierarchy.Id;
    Debug.WriteLine("Идентификатор альтернативной иерархии = " + id);
    // Получим данные коллекции альтернативных иерархий
    attrhierarchies := diminstance.AttributeHierarchies;
    // Получим альтернативную иерархию по уровню атрибута
    attrhierinstance1 := attrhierarchies.FindByAttributeLevel(22);
        If attrhierinstance1 <> Null Then
            // Выведем наименование альтернативной иерархии в окно консоли
                name := attrhierinstance1.Name;
                    Debug.WriteLine("Наименование альтернативной иерархии = " + name) Else
                        Debug.WriteLine("Альтернативная иерархия не найдена = " + name)
                            End If;
End Sub UserProc;

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

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Dimensions;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    diminstance: IDimInstance;
    attrhierarchy: IDimAttributeHierarchy;
    attrhierarchies: IDimAttributeHierarchiesInstance;
    attrhierinstance: IDimAttributeHierarchyInstance;
    attrhierinstance1: IDimAttributeHierarchyInstance;
    id, name: string;
Begin
    // Получим репозиторий
    mb := Params.Metabase;
    // Получим данные справочника
    diminstance := mb.ItemById["DIM_SEP"].Open(NullAs IDimInstance;
    // Получим данные альтернативной иерархии
    attrhierinstance := diminstance.AttributeHierarchies.HierarchyItem[0];
    // Получим альтернативную иерархию
    attrhierarchy := attrhierinstance.AttributeHierarchy;
    // Получим идентификатор альтернативной иерархии и выведем в окно консоли
    id := attrhierarchy.Id;
    System.Diagnostics.Debug.WriteLine("Идентификатор альтернативной иерархии = " + id);
    // Получим данные коллекции альтернативных иерархий
    attrhierarchies := diminstance.AttributeHierarchies;
    // Получим альтернативную иерархию по уровню атрибута
    attrhierinstance1 := attrhierarchies.FindByAttributeLevel(22);
        If attrhierinstance1 <> Null Then
            // Выведем наименование альтернативной иерархии в окно консоли
                name := attrhierinstance1.Name;
                    System.Diagnostics.Debug.WriteLine
                    ("Наименование альтернативной иерархии = " + name) Else
                        System.Diagnostics.Debug.WriteLine
                        ("Альтернативная иерархия не найдена = " + name)
                            End If;
End Sub;

См. также:

IDimAttributeHierarchyInstance