IEaxAnalyzeCore.OpenMatrixDataSource

Синтаксис

OpenMatrixDataSource(DataSource: IMatrixDataSource);

Параметры

DataSource - абстрактный многомерный источник данных, данные которого необходимо загрузить в экспресс-отчет.

Описание

Метод OpenMatrixDataSource осуществляет загрузку в экспресс-отчет данных источника, не являющегося кубом.

Вариантом такого источника являются данные переменных моделирования, полученные в результате расчета задачи моделирования. Доступ к данным переменных осуществляется посредством свойства VariableStub.

Пример

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием "Button1", компонента UiErAnalyzer с наименованием "UiErAnalyzer1" и каких-либо компонентов, отображающих данные экспресс-отчета, загруженного в "UiErAnalyzer1". В репозитории содержится контейнер моделирования с идентификатором "KONT_MODEL". В данном контейнере имеется задача моделирования "Problem_1" настроенная для расчета каких-либо моделей.

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);

Var

MB: IMetabase;

CrInfo: IMetabaseObjectCreateInfo;

Expr: IEaxAnalyzer;

Problem: IMsProblem;

Setting: IMsProblemCalculationSettings;

Calc: IMsProblemCalculation;

MDS: IMatrixDataSource;

Begin

//Временный экспресс-отчет

MB := MetabaseClass.Active;

CrInfo := MB.CreateCreateInfo;

CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_EXPRESSREPORT;

Expr := MB.CreateObject(CrInfo).Edit As IEaxAnalyzer;

//Расчитываемая задача моделирования

Problem := MB.ItemByIdNamespace("Problem_1", MB.ItemById("KONT_MODEL").Key).Bind As IMsProblem;

Setting := Problem.CreateCalculationSettings;

//Расчет задачи моделирования

Calc := Problem.Calculate(Setting);

//Данные по первой выходной переменной

MDS := Calc.VariableStub(Problem.VariableStubs(MsVariableKind.Output).Item(0));

//Загрузка в экспресс-отчет

Expr.OpenMatrixDataSource(MDS);

//Загружаем экспресс-отчет в "UiErAnalyzer1"

UiErAnalyzer1.ErAnalyzer := Expr;

UiErAnalyzer1.Active := True;

End Sub Button1OnClick;

После выполнения примера будет осуществлен расчет задачи моделирования "Problem_1". Отчет по первой выходной переменной будет загружен в компонент "UiErAnalyzer1". Данные будут отображаться во всех компонентах, для которых "UiErAnalyzer1" установлен в качестве источника данных.

См. также:

IEaxAnalyzeCore