Информация

 

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

 

 

Примечание

 

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

 

 

 

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

 

Default.aspx

...

<cc1:StiWebViewer ID="StiWebViewer1" runat="server">

</cc1:StiWebViewer>

...

 

Default.aspx.cs

...

protected void Page_Load(object sender, EventArgs e)

{

StiReport report = new StiReport();

report.Load(Server.MapPath("Reports/SimpleList.mrt"));

// report.Load(Server.MapPath("Reports/Dashboard.mrt"));

 

StiWebViewer1.Report = report;

}

...

 

 

 

Так же HTML5 Viewer имеет специальное событие OnGetReport, которое можно использовать для присвоения отчета вьюверу. В этом случае загрузку отчета необходимо осуществлять в обработчике события.

 

Default.aspx

...

<cc1:StiWebViewer ID="StiWebViewer1" runat="server"

OnGetReport="StiWebViewer1_GetReport">

</cc1:StiWebViewer>

...

 

Default.aspx.cs

...

protected void StiWebViewer1_GetReport(object sender, StiReportDataEventArgs e)

{

StiReport report = new StiReport();

report.Load(Server.MapPath("Reports/SimpleList.mrt"));

// report.Load(Server.MapPath("Reports/Dashboard.mrt"));

 

e.Report = report;

}

...

 

Информация

 

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

 

 

 

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

 

Default.aspx.cs

...

protected void StiWebViewer1_GetReport(object sender, StiReportDataEventArgs e)

{

StiReport report = new StiReport();

report.LoadDocument(Server.MapPath("Reports/SimpleList.mdc"));

 

e.Report = report;

}

...

 

Default.aspx.cs

...

protected void StiWebViewer1_GetReport(object sender, StiReportDataEventArgs e)

{

e.Report = new StiReportCompiledClass();

}

...

 

 

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

 

Default.aspx.cs

...

protected void StiWebViewer1_GetReport(object sender, StiReportDataEventArgs e)

{

StiReport report = new StiReport();

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

 

e.Report = report;

}

...

 

 

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

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

 

Default.aspx.cs

...

public partial class _Default : Page

{

static _Default()

{

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

}

}

...