IDimHierarchyCreator.HierarchyInstance

Синтаксис

HierarchyInstance: IDimHierarchyInstance;

HierarchyInstance: Prognoz.Platform.Interop.Dimensions.IDimHierarchyInstance;

Описание

Свойство HierarchyInstance определяет альтернативную иерархию справочника.

Примеры Fore и Fore.NET

Для выполнения примера разместите на форме:

Для Fore.NET вместо компонентов Fore используйте их аналоги.

Укажите:

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

После запуска примера:

Пример является обработчиком события OnClick для компонента «Button1».

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Creator: IDimHierarchyCreator;
Begin
    // Cоздадим динамически альтернативную иерархию
    Creator := New DimHierarchyCreator.Create;
    
// Получим отметку с элементами, по которой формируется альтернативная иерархия
    Creator.Selection := DimensionTree1.Selection;
    
// Получим отметку с дополнительными элементами
    Creator.AdditionalElements:=DimensionTree2.Selection;
    
// Зададим коневой элемент  
    Creator.RootElement:= True;
    Creator.RootElementName:=
"Корневой элемент";
    //Получим альтернативную иерархию
    DimensionTree2.Selection.Hierarchy := Creator.HierarchyInstance;
    
//Выведем наименование группировочных элементов
    memo1.Lines.Add("Группировочные элементы:"+Creator.HierarchyInstance.GroupingElements.ToString("NAME",";"));
End Sub Button1OnClick;

Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.ExtCtrls;
Imports Prognoz.Platform.Interop.Forms;
Imports Prognoz.Platform.Interop.Metabase;

Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    Creator: IDimHierarchyCreator;

Begin
    
// Cоздаем динамически альтернативную иерархию
    Creator := New DimHierarchyCreator.Create();
    
// Получим отметку с элементами, по которой формируется альтернативная иерархия
    Creator.Selection := dimensionTreeNet1.Selection;
    
// Получим отметку с дополнительными элементами
    Creator.AdditionalElements:=dimensionTreeNet2.Selection;
    
// Зададим коневой элемент  
    Creator.RootElement:= True;
    Creator.RootElementName:=
"Корневой элемент";
    //Получим альтернативную иерархию
    dimensionTreeNet2.Selection.Hierarchy := Creator.HierarchyInstance;
    
//Выведем наименование группировочных элементов
    ElemList := New List < string > ();
    ElemList.Add(
"Группировочные элементы:"+Creator.HierarchyInstance.GroupingElements.ToString("NAME",";", False));
    textBox1.Lines := ElemList.ToArray();
 
End Sub;

В результате выполнения примера в компоненте с идентификатором DimensionTree2 отобразится созданная динамически альтернативная иерархия с корневым элементом «Корневой элемент», а в компоненте с идентификатором memo 1 (для Fore.NET: с идентификатором textBox1). наименование группировочного элемента.

См. также:

IDimHierarchyCreator