Команда ShowCalcChaingDialog

Назначение

Вывод стандартного окна цепочки расчета для организации порядка расчета моделей.

Параметры использования

Параметр

Описание
IEaxAnalyzer Экспресс-отчет, для которого необходимо организовать порядок расчета моделей.
IEaxDataAreaSlice Срез аналитической области данных.

Все параметры являются обязательными.

Особенности применения

Команда может применяться только для экспресс-отчетов.

Пример Fore

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонент UiErAnalyzer с наименованием «UiErAnalyzer1», являющийся источником для компонента TabSheetBox с наименованием «TabSheetBox1». К «UiErAnalyzer1» подключен какой-либо экспресс-отчёт с вычисляемым элементом. UiErAnalyzer должен быть подключен как источник для TabSheetBox.

Добавьте ссылки на системные сборки Express, Tab и Ui.

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Express: IEaxAnalyzer;
    Data: Array;
    Grid: IEaxGrid;
    Slice: IEaxDataAreaSlice;
    Context: IUiCommandExecutionContext;
    Target: IUiCommandTarget;
Begin
    //Получаем экспресс-отчет
    Express := UiErAnalyzer1.ErAnalyzer;
    //Получаем таблицу экспресс-отчета
    Grid := Express.Grid;
    //Получаем срез данных
    Slice := Grid.Slice;
    //Указываем необходимые элементы массива
    Data := New Variant[2];
    Data[0] := Express;
    Data[1] := Slice;
    //Открытие полученного экспресс-отчёта на просмотр
    Target := WinApplication.Instance.GetPluginTarget("Express");
    Context := Target.CreateExecutionContext;
    Context.Data := Data;
    Target.Execute("ShowCalcChainDialog", Context);
End Sub Button1OnClick;

В результате при нажатии на кнопку «Button1» будет выведен диалог цепочки расчета:

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Pivot;
Imports Prognoz.Platform.Interop.Tab;
Imports Prognoz.Platform.Interop.Ui;

Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    Express: IEaxAnalyzer;
    Data: Array;
    Grid: IEaxGrid;
    Slice: IEaxDataAreaSlice;
    Context: IUiCommandExecutionContext;
    Target: IUiCommandTarget;
    WinApp: WinApplication = New WinApplicationClass_2();
Begin
    Express := UiErAnalyzerNet1.ErAnalyzer.ErAnalyzer;
    Grid := Express.Grid;
    Slice := grid.Slice;
    Data := New Object[2];
    Data[0] := Express;
    Data[1] := Slice;
    Target := WinApp.GetPluginTarget("Express");
    Context := Target.CreateExecutionContext();
    Context.Data := Data;
    Target.Execute("ShowCalcChainDialog", Context, Null);
End Sub;

См. также:

IUiCommandTarget.Execute