日期:2014-05-16 浏览次数:20987 次
何为交叉表?
先来个图吧
这个表格用于统计每个国家的每种产品的数量(表中数据均为模拟数据,不是真实数据)
这种表格有一个特点:行标题和列标题都是动态的,是根据查询出来的数据进行横向和纵向的分组统计得到的。以上表举例:国家的数量是变的、产品的种类也是变的;可以对某个国家或某种产品进行聚合统计
jasperreport对交叉表也提供类支持,有一个element是专门来做交叉表的:Crosstab。如下图所示
上一篇文章中,我提到是因为做课程表的需求,才学习了jasperreport,而其中的Crosstab元素的结构和课程表长得确实很像,所以重点研究了交叉表。
课程表的结构
课程表中横向是节次,纵向是星期。星期和节次是课表中每个单元格的两个坐标,只要这两个坐标确定了,单元格的位置就定了。
课表只是利用了交叉表的结构,而并没有做任何的数据统计,只是原始数据的显示
下面就以课程表为例,介绍交叉表的使用
1.将交叉表元素拖到新建的空白报表的Summary band上
该例子中删除了其它不用的band,只留了pageheader用来显示课表的标题和Summary用来显示课表表格
注意:一定要将crosstab拖到summaryband,否则运行时会报错