Для построения загруженного отчета необходимо вызвать функцию render() у объекта отчета StiReport. Например, требуется построить отчет перед его экспортированием:

 

app.py

 

from stimulsoft_reports.report import StiReport

from stimulsoft_reports.report.enums import StiExportFormat

 

report = StiReport()

report.loadFile(url_for('static', filename='reports/SimpleList.mrt'))

report.render()

report.exportDocument(StiExportFormat.PDF)

 

 

 

Полный код примера доступен на GitHub.

 

Если требуется выполнить какие-либо действия с отчетом перед его построением при помощи JavaScript кода, достаточно определить название JavaScript функции для события onBeforeRender, в аргументах функции будут переданы тип действия и сам отчет. Пример регистрации JSON данных перед построением отчета:

 

app.py

 

from stimulsoft_reports.report import StiReport

 

report = StiReport()

report.onBeforeRender += 'beforeRender'

report.loadFile(url_for('static', filename='reports/SimpleList.mrt'))

report.render()

 

 

render.html

 

<script>

function onBeforeRender(args) {

var dataSet = new Stimulsoft.System.Data.DataSet("SimpleDataSet");

dataSet.readJsonFile("Demo.json");

 

var report = args.report;

report.regData(dataSet.dataSetName, "", dataSet);

}

</script>

 

 

 

Для выполнения каких-либо действий после построения отчета при помощи JavaScript кода, достаточно определить название JavaScript функции для события onAfterRender, в аргументах функции будут переданы тип действия и сам отчет.  Пример вывода сообщения после построения отчета:

 

app.py

 

from stimulsoft_reports.report import StiReport

 

report = StiReport()

report.onAfterRender += 'afterRender'

report.loadFile(url_for('static', filename='reports/SimpleList.mrt'))

report.render()

 

 

render.html

 

<script>

function afterRender(args) {

alert("The report rendering is completed.");

}

</script>

 

 

 

Полный код примера доступен на GitHub.