IMetaAttributeSetting.DimHierarchy

Синтаксис Fore

DimHierarchy: IDimHierarchyInstance;

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

DimHierarchy: IDimHierarchyInstance;

Описание

Свойство DimHierarchy определяет иерархию атрибута.

Комментарии

Для определения, будет ли видимым указанный атрибут справочника НСИ в раскрывающемся списке значений атрибута базы данных временных рядов, используйте свойство IMetaAttributeSetting.ShowAttribute.

Пример Fore

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1» и компонент MetaAttributesBreadcrumb с наименованием «MetaAttributesBreadcrumb1». В репозитории должна присутствовать база данных временных рядов с идентификатором «DIM_HIERARCHY». В базе должен присутствовать пользовательский атрибут, ссылающийся на справочник с настроенной альтернативной иерархией. Для компонента «MetaAttributesBreadcrumb1» должен быть выбран хотя бы один элемент справочника. Пример является обработчиком события OnClick для компонента «Button1». Подключите системные сборки: Cubes, Dimensions, ExtCtrls, Forms, Rds.

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

Sub SAMPLEFormOnCreate(Sender: Object; Args: IEventArgs);
Var
    MB: IMetabase;
    RubInst: IRubricatorInstance;
Begin
    MB := MetabaseClass.Active;
    RubInst := MB.ItemById("DIM_HIERARCHY").Open(NullAs IRubricatorInstance;
    MetaAttributesBreadcrumb1.Rubricator := RubInst;
End Sub SAMPLEFormOnCreate;

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Items: IBreadcrumbItems;
    Item: IMetaAttributeBreadcrumbItem;
    Attr: IMetaAttribute;
    AttrS: IMetaAttributeSettings;
    AttrSett: IMetaAttributeSetting;
    DimInst: IDimInstance;
Begin
    Items := MetaAttributesBreadcrumb1.Items;
    Item := Items.Item(0As IMetaAttributeBreadcrumbItem;
    Attr := Item.MetaAttribute;
    DimInst := Attr.ValuesObject.Open(NullAs IDimInstance;
    AttrS := MetaAttributesBreadcrumb1.MetaAttributeSettings;
    AttrSett := AttrS.FindByAttribute(Attr);
    AttrSett.DimHierarchy := DimInst.Hierarchies.Item(0);
End Sub Button1OnClick;

После выполнения примера для отображаемых элементов справочника будет применена альтернативная иерархия:

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.ExtCtrls;
Imports Prognoz.Platform.Interop.Forms;
Imports Prognoz.Platform.Interop.Rds;

Private Sub SAMPLEForm_Load(sender: System.Object; e: System.EventArgs);
Var
    MB: IMetabase;
    RubInst: IRubricatorInstance;
Begin
    MB := Self.Metabase;
    RubInst := MB.ItemById["DIM_HIERARCHY"].Open(NullAs IRubricatorInstance;
    metaAttributesBreadcrumbNet1.Rubricator := RubInst;
End Sub;

Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    Items: IBreadcrumbItems;
    Item: IMetaAttributeBreadcrumbItem;
    Attr: IMetaAttribute;
    AttrS: IMetaAttributeSettings;
    AttrSett: IMetaAttributeSetting;
    DimInst: IDimInstance;
Begin
    Items := metaAttributesBreadcrumbNet1.CtrlBox.Items;
    Item := Items.Item[0As IMetaAttributeBreadcrumbItem;
    Attr := Item.MetaAttribute;
    DimInst := Attr.ValuesObject.Open(NullAs IDimInstance;
    AttrS := metaAttributesBreadcrumbNet1.CtrlBox.MetaAttributeSettings;
    AttrSett := AttrS.FindByAttribute(Attr);
    AttrSett.DimHierarchy := DimInst.Hierarchies.Item[0];
End Sub;

См. также:

IMetaAttributeSetting