PopupSortAttribute(Attr: IDimAttribute);
PopupSortAttribute(Attr: Prognoz.Platform.Interop.Dimensions.IDimAttribute);
Attr. Атрибут справочника.
Метод PopupSortAttribute выполняет сортировку элементов иерархии по заданному атрибуту.
Для выполнения сортировки элементов иерархии используйте метод IEaxSelectionPadContext.PopupSort.
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента EaxConfigurationPanel с наименованием «EaxConfigurationPanel1» и компонента UiErAnalyzer, который установлен в качестве источника данных для «EaxConfigurationPanel1». «UiErAnalyzer1» подключен к экспресс-отчету, который содержит измерение с идентификатором «D_TO», являющееся справочником НСИ, расположенном в репозитории НСИ с идентификатором «RDS». Данный справочник содержит атрибут с идентификатором «TERRID».
Пример является обработчиком события OnClick для компонента «Button1».
Добавьте ссылку на системные сборки Metabase, Dimensions.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
mb: IMetabase;
Dim: IDimensionModel;
Attr: IDimAttribute;
Attrs: IDimAttributes;
sps: ISystemPadContext;
PadContext: IEaxSelectionPadContext;
Begin
mb := MetabaseClass.Active;
Dim := mb.ItemByIdNamespace("D_TO", MB.ItemById("RDS").Key).Bind As IDimensionModel;
Attrs := Dim.Attributes;
Attr := Attrs.FindById("TERRID");
sps := EaxConfigurationPanel1.GetActiveContext;
PadContext := sps As IEaxSelectionPadContext;
PadContext.PopupSortAttribute(Attr);
Debug.WriteLine("Выполнена сортировка по атрибуту TERRID в измерении "
+ PadContext.DimSelection.Dimension.Name);
End Sub Button1OnClick;
На боковой панели перейдите в группу вкладок «Отметка» и выберите измерение. При нажатии на кнопку будет выполнена сортировка элементов измерения по атрибуту «TERRID».
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Dimensions;
…
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
mb: IMetabase;
Dim: IDimensionModel;
Attr: IDimAttribute;
Attrs: IDimAttributes;
sps: ISystemPadContext;
PadContext: IEaxSelectionPadContext;
Begin
mb := Self.Metabase;
Dim := mb.ItemByIdNamespace["D_TO", MB.ItemById["RDS"].Key].Bind() As IDimensionModel;
Attrs := Dim.Attributes;
Attr := Attrs.FindById("TERRID");
sps := eaxConfigurationPanelNet1.CtrlBox.GetActiveContext();
PadContext := sps As IEaxSelectionPadContext;
PadContext.PopupSortAttribute(Attr);
System.Diagnostics.Debug.WriteLine("Выполнена сортировка по атрибуту TERRID в измерении "
+ PadContext.DimSelection.Dimension.Name);
End Sub;
См. также: