导出和打印
导出方式
报表支持三种导出方式:PDF、Excel、Word。
使用方法:在页面上放一个报表组件,设置“增加报表工具栏”
除了使用报表组件生成,也可以使用 JS 调用接口:
- 导出 PDF :this.comp("reportId").exportPDF();
- 导出 Word :this.comp("reportId").exportWord();
- 导出 Excel :this.comp("reportId").exportExcel();
打印设置
要实现报表的打印、预览、页面设置功能,可以使用报表组件生成。
使用方法:在页面上放一个报表组件,设置“增加报表工具栏”
在打印设置的窗口中,可以对纸张大小、边距、方向、页眉页脚大小进行设置。 提示:在报表设计的 Excel 进行页面设置有同样效果。报表服务器会读取 Excel 的页面设置作为默认打印页面设置。
除了使用报表组件也可以使用 JS 调用导出接口:
- 打印:this.comp("reportId").print();
- 预览:this.comp("reportId").preview();
- 页面设置:this.comp("reportId").pageSetup();
分页打印
网格报表分页
设计时:
- 在 A1、A2、A3 中,添加批注 table-header:true,表示第一、二、三行为报表表头。分页后,这三行会作为表头在每页显示。
- 在 B4 中,添加批注 record-per-page:20,表示报表输出时每页显示20行数据,如果同时添加批注 auto-fill-row:true 代表如果最后一页的行数不够20行的话,自动添加空行补充满20行。
运行时:
分组报表分页
设计时:
- 在 A1、A2、A3 中,添加批注 table-header:true,表示第一、二、三行为报表表头。分页后,这三行会作为表头在每页显示。
- 在 B4 中,添加批注 group-break:true,表示报表输出时按照产品类别分组进行分页显示。
运行时:
分栏打印
设计时:
- 在 A1、A2、A3 中,添加批注 table-header:true,表示第一、二、三行为报表表头。分页后,这三行会作为表头在每页显示。
- 在 A1 中,再添加批注 colcount:2,表示报表输出时在一页中分两栏同时显示报表数据。
运行时:
整体显示
在卡片报表预览和打印时,常常会遇到这样一个问题:当一页显示不下一张卡片报表时,该报表的一部分会被拆分到另一页显示。
在包含 select 关键字的单元格中插入批注:keep-together:true 就可以了。