Информация

 

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

 

 

Примечание

 

При присвоении отчета вьювер компоненту, происходит автоматическое построение отчета. Вызов метода Report.Render() необходим только в том случае, если требуется провести какие-либо действия с построенным отчетом перед его отображением во вьювере. Аналогично, при использовании режима компиляции, вызов метода Report.Compile() требуется только в том случае, если требуется провести какие-либо действия с откомпилированным отчетом перед его построением и отображением во вьювере.

 

 

 

Для отображения отчета необходимо добавить на страницу компонент StiNetCoreViewer и задать ему минимально необходимые свойства, а в обработчике событий страницы определить необходимые действия.

 

Index.cshtml

...

@Html.StiNetCoreViewer(new StiNetCoreViewerOptions() {

Actions =

{

GetReport = "GetReport",

ViewerEvent = "ViewerEvent"

}

})

...

 

Index.cshtml.cs

...

public IActionResult OnPostGetReport()

{

// Create the report object

StiReport report = new StiReport();

 

// Load report or dashboard

report.Load(StiNetCoreHelper.MapPath(this, "Reports/SimpleList.mrt"));

//report.Load(StiNetCoreHelper.MapPath(this, "Reports/Dashboard.mrt"));

 

return StiNetCoreViewer.GetReportResult(this, report);

}

 

public IActionResult OnGetViewerEvent()

{

return StiNetCoreViewer.ViewerEventResult(this);

}

 

public IActionResult OnPostViewerEvent()

{

return StiNetCoreViewer.ViewerEventResult(this);

}

...

 

Информация

 

Действие ViewerEvent является обязательным. Без него корректная работа вьювера невозможна. Действие вызывается для двух типов запросов: OnGet - компонент запрашивает необходимые для работы ресурсы, такие как CSS-стили, JS-скрипты и изображения; OnPost - все остальные действия вьювера.

 

 

З

 

 

Если отчет не был построен перед отображением, то компонент HTML5 Viewer построит его автоматически. Таким образом, для отображения отчета разрешено использовать шаблоны отчетов и построенные отчеты.

 

Index.cshtml.cs

...

public IActionResult OnPostGetReport()

{

StiReport report = new StiReport();

report.LoadDocument(StiNetCoreHelper.MapPath(this, "Reports/SimpleList.mdc"));

 

return StiNetCoreViewer.GetReportResult(this, report);

}

...

 

 

Так как дашборд не является статическим документов и для его работы требуются данные, то формат построенного документа MDC для него не доступен. Вместо этого предоставлена возможность использовать снимок отчета в формате MRT, который содержит в себе все необходимые для работы дашборда данные, и может быть корректно отображен во вьювере.

 

Index.cshtml.cs

...

public ActionResult OnPostGetReport()

{

StiReport report = new StiReport();

report.Load(StiNetCoreHelper.MapPath("~/Reports/Snapshot.mrt"));

 

return StiNetCoreViewer.GetReportResult(report);

}

...

 

 

Подключение пользовательских шрифтов

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

 

Index.cshtml.cs

...

public class IndexModel : PageModel

{

static IndexModel()

{

Stimulsoft.Base.StiFontCollection.AddFontFile(StiNetCoreHelper.MapPath(this,"/fonts/my-font/font-name.ttf"));

}

}

...