如何导出HTML格式的报表

Stimulsoft Reports.Ultimate是.NET框架下最全面的报表解决方案,支持多种报表导出格式,拥有简单且强大的报表引擎,此示例显示如何从代码将报表导出为HTML格式。需要创建StiReport类型的报表对象,然后通过调用loadFile()方法加载报表模板文件。在此之后,应该通过调用报表对象的  render()方法来呈现报表:

// Create a new report instance
var report = new Stimulsoft.Report.StiReport();
// Load report from url
report.loadFile("../reports/SimpleList.mrt");
// Render report
report.render();
要导出HTML格式的报告,应该创建StiHtmlExportSettings和StiHtmlExportService类的两个对象。第一个对象定义所有导出设置,第二个对象是HTML导出服务。还需要创建  TextWriter和  StiHtmlTextWriter对象 - 它们需要输出导出的结果。

要开始导出,只需调用导出服务对象的exportTo()方法,该方法接受呈现的报表,文本编写器和导出设置。例如,结果通过其Id显示在DIV容器中:

function exportReportHtml() {
    // Create an HTML settings instance. You can change export settings.
    var settings = new Stimulsoft.Report.Export.StiHtmlExportSettings();
    // Create an HTML service instance.
    var service = new Stimulsoft.Report.Export.StiHtmlExportService();
 
    // Create a text writer objects.
    var textWriter = new Stimulsoft.System.IO.TextWriter();
    var htmlTextWriter = new Stimulsoft.Report.Export.StiHtmlTextWriter(textWriter);
    // Export HTML using text writer.
    service.exportTo(report, htmlTextWriter, settings);
 
    // Write HTML text to DIV element.
    var container = document.getElementById("htmlContainer");
    container.innerHTML = textWriter.getStringBuilder().toString();
}

如果需要将HTML导出结果保存到文件,可以使用  Object.saveAs()方法。此方法已添加到Stimulsoft库中,可以使用它来保存文件。导出过程与DIV容器中的HTML输出相同:

function saveReportHtml() {
    // Create an HTML settings instance. You can change export settings.
    var settings = new Stimulsoft.Report.Export.StiHtmlExportSettings();
    // Create an HTML service instance.
    var service = new Stimulsoft.Report.Export.StiHtmlExportService();
 
    // Create a text writer objects.
    var textWriter = new Stimulsoft.System.IO.TextWriter();
    var htmlTextWriter = new Stimulsoft.Report.Export.StiHtmlTextWriter(textWriter);
    // Export HTML using text writer.
    service.exportTo(report, htmlTextWriter, settings);
 
    // Get HTML string from text writer object
    var html = textWriter.getStringBuilder().toString();
    // Get report file name
    var fileName = String.isNullOrEmpty(report.reportAlias) ? report.reportName : report.reportAlias;
    // Save data to file
    Object.saveAs(html, fileName + ".html", "text/html;charset=utf-8");
}
在下面的屏幕截图中,可以看到示例代码的结果。

下载Stimulsoft Reports.Ultimate



猜你喜欢

转载自blog.csdn.net/xiaochuachua/article/details/80969522
今日推荐