Информация

 

В следствие того, что для панелей индикаторов (дашбордов) и отчетов используется одинаковый унифицированный формат шаблона MRT, методы для загрузки шаблона и работы с данными, то в тексте документации будет использоваться слово «отчет».

 

 

 

У компонента HTML5 Designer предусмотрен режим просмотра редактируемого отчета. Для просмотра отчета, достаточно перейти на соответствующую вкладку в окне дизайнера. Шаблон будет передан на сторону сервера, построен и отображен во встроенном вьювере.

 

 

 

Перед просмотром отчета предусмотрена возможность выполнить какие-либо необходимые действия, например, подключить данные для отчета. Для этого достаточно определить специальное действие PreviewReport, которое будет вызвано перед просмотром отчета. Действие PreviewReport вызывается перед подготовкой и построением отчета для просмотра, до его сохранения в кэш.

 

Index.cshtml

...

@Html.Stimulsoft().StiMvcDesigner("MvcDesigner1",

new StiMvcDesignerOptions() {

Actions =

{

PreviewReport = "PreviewReport"

}

})

...

 

HomeController.cs

...

public ActionResult PreviewReport()

{

StiReport report = StiMvcDesigner.GetActionReportObject();

//var Dashboard = StiMvcDesigner.GetActionReportObject();

 

DataSet data = new DataSet("Demo");

data.ReadXml(Server.MapPath("~/Content/Data/Demo.xml"));

report.RegData(data);

//Dashboard.RegData(data);

 

return StiMvcDesigner.PreviewReportResult(report);

//return StiMvcDesigner.PreviewReportResult(Dashboard);

}

...

 

 

При необходимости выполнить действия над отчетом непосредственно перед отображением отчета, можно воспользоваться специальным действием GetPreviewReport, которое вызывается после запроса подготовленного отчета из кэша.

 

Index.cshtml

...

@Html.Stimulsoft().StiMvcDesigner("MvcDesigner1",

new StiMvcDesignerOptions() {

Actions =

{

GetPreviewReport = "GetPreviewReport"

}

})

...

 

HomeController.cs

...

public ActionResult GetPreviewReport()

{

StiReport report = StiMvcDesigner.GetActionReportObject();

//var Dashboard = StiMvcDesigner.GetActionReportObject();

 

DataSet data = new DataSet("Demo");

data.ReadXml(Server.MapPath("~/Content/Data/Demo.xml"));

report.RegData(data);

//Dashboard.RegData(data);

//report.IsRendered = false;

 

return StiMvcDesigner.PreviewReportResult(report);

//return StiMvcDesigner.PreviewReportResult(Dashboard);

}

...

 

Информация

 

Так как в данном событии передаётся уже подготовленный для просмотра отчет, то при необходимости выполнить повторное построение, необходимо установить флаг report.IsRendered = false.