birt报表
分组报表在网格报表的基础上,我们可能还需要对数据进行进一步的处理。比如,将同类数据显示在一个组中,并对这个组进行统计运算。如下图所示,对数据按省份进行分组,并将同一省份数据放在一个组内进行汇总统计。
下面我们将上例的网格报表进行一下小的改进,建立一个按用户类型进行分组的报表。构建数据集本例所用的数据集与上例完全相同,输入与上例3.4.2相同的sql语句建立数据集即可。
对报表进行布局1.做好上面的工作之后,先在布局编辑器中建立一个1列2行的Grid,2.同上例一样,从选用板“Palette”中拖拽一个5列1行的Table至第二行的网格中,3.从Data Explorer视图中的“Data Sets”项中将TYPENAME拖拽至此Table的第一个详细信息行中,然后依次将,CUSTOMER_ID,CUSTOMER_NAME,FAX,TEL拖拽入详细信息行内。这里不再赘述。
设定分组数据1.选中Table,在右下方的Table的属性编辑器“Property Editor - Table”中,选择Group,进入如下分组设定界面:
2.点击“Add”按钮进行添加分组:
从“Group on”的下拉框选择TYPENAME,其他默认,(可根据需要对“Name”项进行命名),然后选择“OK”。完成分组设定。3.这时Table中多出一行Group行,如下图:
将详细信息栏中的TYPENAME(即Table中第三行第一列数据项,如上图标记下方的数据项)删除。这样,一个按照用户类型建立的分组报表就建立起来了。END
1. 描述分组报表就是将报表中的数据按组显示,即将数据列中相同项合并为一组显示,如下图最简单的分组报表:
2. 制作步骤2.1 新建报表,添加数据集新建工作簿,添加数据集,SQL语句为:SELECT * FROM [销量]。2.2 拖拽数据列将数据列拖拽入相应单元格(默认的就是分组显示,因此不需要做其他设置),如下图所示:
设置销量数据列为汇总-求和,其余默认。预览便可看到上方的分组效果了。已完成的模板,可参见%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\GroupReport\Group.cpt模板效果在线查看请点击Group.cpt更多分组报表的应用请查看分组报表
3. 总结由该例子可以看出:拖拽的数据列默认就是分组显示的,会将相同项合并起来;数据列在同一行时,会产生默认的父格关系:同行的单元格会以其左侧相邻的扩展格为父格,就如这边销售员默认父格为地区,销量默认父格为销售员;数据列在同一行且来自于同一数据集时,子格会自动将父格作为过滤条件,形成一种附属关系,就如这边销售员会自动罗列在所属地区下。END