Информация

 

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

 

 

 

В компоненте HTML5 Designer предусмотрено два варианта сохранения отчета, которые доступны в главном меню и на главной панели дизайнера: Сохранить (Save) и Сохранить как (Save As). В свою очередь, каждый из этих вариантов сохранения имеет свои режимы и настройки.

 

Сохранение отчета и дашборда на стороне сервера

 

Для сохранения редактируемого отчета на стороне сервера необходимо воспользоваться специальным событием OnSaveReport, которое будет вызвано при выборе пункта Сохранить (Save) в главном меню, либо нажатии на кнопку Сохранить (Save) на главной панели дизайнера.

 

Default.aspx

...

<cc1:StiWebDesigner ID="StiWebDesigner1" runat="server"

OnSaveReport="StiWebDesigner1_SaveReport">

</cc1:StiWebDesigner>

...

 

Default.aspx.cs

...

protected void StiWebDesigner1_SaveReport(object sender, StiReportDataEventArgs e)

{

StiReport report = e.Report;

 

// Save the report template

// ...

}

...

 

 

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

 

Default.aspx.cs

...

protected void StiWebDesigner1_SaveReport(object sender, StiReportDataEventArgs e)

{

StiReport report = e.Report;

 

// Save the report template

// ...

 

e.ErrorCode = 123;

//e.ErrorString = "Some message after saving";

}

...

 

 

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

 

Default.aspx.cs

...

protected void StiWebDesigner1_SaveReport(object sender, StiSaveReportEventArgs e)

{

//Report name from the designer save dialog

var reportName = e.FileName;

 

//Original report name from properties

var reportName = e.Report.ReportName;

}

...

 

 

При установке положительного целочисленного значения для свойства e.ErrorCode, пользователю будет отображено сообщение об ошибке сохранения отчета и код ошибки, где код ошибки – установленное целочисленное значение.

 

 

 

При установке строкового значения для свойства e.ErrorString, будет отображено диалоговое с указанным текстом. Текст может содержать как сообщение об ошибке сохранения либо предупреждение, так и любое другое сообщение.

 

 

 

Сохранение отчета и дашборда на стороне клиента

 

Для сохранения редактируемого отчета на стороне клиента в виде файла не требуется дополнительных настроек дизайнера. Достаточно выбрать пункт главного меню Сохранить как (Save As), при нажатии на который отобразится диалог сохранения файла. В данном диалоге можно изменить имя файла отчета, после чего файл будет сохранен на локальном диске компьютера.

 

 

 

Компонент HTML5 Designer предоставляет возможность изменить поведение указанного варианта сохранения, для этого в дизайнере предусмотрено специальное событие OnSaveReportAs. При использовании указанного события сохранение отчета будет происходить на стороне сервера, работа данного события будет аналогична событию OnSaveReport.

 

Default.aspx

...

<cc1:StiWebDesigner ID="StiWebDesigner1" runat="server"

OnSaveReportAs="StiWebDesigner1_SaveReportAs">

</cc1:StiWebDesigner>

...

 

Default.aspx.cs

...

protected void StiWebDesigner1_SaveReportAs(object sender, StiReportDataEventArgs e)

{

StiReport report = e.Report;

 

// Save the report template

// ...

}

...

 

 

Настройки сохранения

 

Сохранение отчета производиться в фоновом режиме, т.е. без перезагрузки страницы в окне браузера. Если необходимо каким-либо образом визуально управлять процессом сохранения отчета, следует изменить значение свойства SaveReportMode (либо SaveReportAsMode) дизайнера на одно из трех указанных значений: Hidden (значение по умолчанию), Visible или NewWindow.

 

Default.aspx

...

<cc1:StiWebDesigner ID="StiWebDesigner1" runat="server"

OnSaveReportAs="StiWebDesigner1_SaveReportAs"

SaveReportAsMode="Visible">

</cc1:StiWebDesigner>

...

 

 

Если свойство SaveReportMode установлено в значение Visible, то событие сохранения отчета будет вызвано в текущем окне браузера в обычном (видимом) режиме при помощи POST-запроса. Если свойство SaveReportMode установлено в значение NewWindow, то событие сохранения отчета будет вызвано в новом окне браузера. По умолчанию данное свойство установлено в значение Hidden, т.е. событие сохранения отчета вызывается в фоне при помощи AJAX-запроса и никак не отображается в окне браузера. Для свойства SaveReportAsMode применимы те же значения и поведение.