Вызов стандартного диалога настройки свойств объекта/объектов листа.
Параметры команды передаются в свойстве Data. Для работы команды в данном свойстве необходимо указать одно из следующих значений:
Тип значения | Описание |
ITabObject | Объект листа, для которого необходимо отобразить диалог настройки свойств. |
Array | Массив типа Variant. Каждый элемент массива - объект листа, описываемый интерфейсом ITabObject. Если тип элемента массива не ITabObject, то элемент игнорируется. |
Команда может применяться только для регламентных отчетов. Результатом выполнения команды будет логическое значение True, если в диалоге была нажата кнопка «ОК» и False, если была нажата кнопка «Отмена».
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента ReportBox и компонента UiReport с наименованием «UiReport1», являющегося источником данных для ReportBox. На активном листе регламентного отчета, который подключен к компоненту «UiReport1», имеется минимум один объект.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Report: IPrxReport;
Sheet: ITabSheet;
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
Begin
Report := UiReport1.Instance As IPrxReport;
Sheet := (Report.ActiveSheet As IPrxTable).TabSheet;
Target := WinApplication.Instance.GetPluginTarget("Report");
Context := Target.CreateExecutionContext;
Context.Data := Sheet.Objects.Item(0);
Target.Execute("ObjectProperties", Context);
End Sub Button1OnClick;
При нажатии на кнопку будет вызван диалог настройки параметров первого объекта, расположенного на активном листе отчета.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;
Imports Prognoz.Platform.Interop.Ui;
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
Report: IPrxReport;
Sheet: ITabSheet;
WinApp: WinApplication = New WinApplicationClass_2();
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
Begin
Report := UiReportNet1.ReportUi.Report;
Sheet := (Report.ActiveSheet As IPrxTable).TabSheet;
Target := WinApp.GetPluginTarget("Report");
Context := Target.CreateExecutionContext();
Context.Data := Sheet.Objects.Item[0];
Target.Execute("ObjectProperties", Context, Null);
End Sub;
См. также: