本期讲师:刘鹏 GcExcel项目组,核心开发者
Hello,大家好,本期葡萄城技术公开课,将由我来为大家带来《性能碾压 POI !利用模板语法快速生成 Excel 报表》的技术分享。
本期课程,我们将借助服务端表格组件GcExcel 的模板语法来完成Excel报表的生成,通过使用简单的语法标记,可以在不借助任何第三方组件的情况下,结合数据源,自动化地生成Excel模板文件。
目前,GcExcel可以生成的文件格式包括 XLSX、PDF、SSJSON 以及 HTML。在公开课上,我将详细介绍GcExcel 的模板功能,并教大家如何使用模板生成Excel报表,欢迎大家预约本期公开课,7月10日 下午14:00,期待您的准时收看。
免费预约地址:https://live.vhall.com/120821085
GcExcel 的模板功能简介
GcExcel 的模板功能是一个高级功能,它提供了一组标记,使用户可以通过简单的语法,快速制作出一个Excel模板文件。然后,结合数据源,自动化地生成文件。
要使用这个功能,请前往GcExcel产品官网下载试用最新版本。
工作机制:
1. 首先,我们需要准备一个模板文件(不限于Excel文件,也可以是GcExcel的模板实例)
2. 有了模板文件,我们就可以结合数据源和GcExcel的模板引擎,实现自动化生成模板文件的功能,从而避免了手动输入大量数据的工作
GcExcel 的模板功能工作机制
代码示例:
```
//重要的4个步骤:
//1. 打开模板文件(.xlsx)
//2. 添加并命名数据源
//3. 处理模板,调用接口 IWorkbook.processTemplate()
//4. 保存已处理的文件
IWorkbook workbook = new Workbook();
workbook.open("template.xlsx"); //打开模板文件
workbook.addDataSource("ds", getData()); //添加并命名数据源
workbook.processTemplate(); //处理模板
workbook.save("result.xlsx");//导出处理后的文件
```
模板样例:
· Tablix报告:该模板主要用于设计复杂表头样式,如行和列标题中存在多行、表头中存在小计行等。
· 员工缺勤计划:该模板使用了条件格式,它通过一个工作表名称,在单独的工作表中显示每个月的数据。
· 商品详情:该模板使用了模板属性 "image=true",即在模板处理后把图片字段的数据显示为图片。
注意:上述模板的展示效果并非 GcExcel 的功能,而是借助了 SpreadJS 纯前端表格控件进行可视化展示。
使用模板生成Excel的基本概念和步骤详解
通过上一节,相信大家已经对GcExcel 的模板功能有了一定的认识,下面我会详细介绍如何使用模板来生成Excel报表。
基本语法:
1. GcExcel中模板的定义:
· 使用 { { 和 }} 作为标记符,用以定义模板。
· 在这两个标记符之间,用户可以定义数据字段、函数、表达式等。
· GcExcel提供了丰富的属性,用以配置并更改默认行为。
2. 模板的用法:
· 可以以字符串的形式,设置在Excel单元格中。
· 目前,一个单元格只能使用一个模板。
3. 代码示例:
```
{ {ds