Просмотр
Информация |
В следствие того, что для панелей индикаторов (дашбордов) и отчетов используется одинаковый унифицированный формат шаблона 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.
|