不完全分组
一、报表实例
我们把上节的报表做些变化,不要把所有的记录用于分组,因为某些组用户并不关心,仅仅保留“华北”、“华东”这两个组,把剩余的组全部归并成一组,命名为“其他”,报表样式如下图所示:
这种仅仅对数据集中的部分记录进行分组的报表,我们称为不完全分组报表。
不完全分组报表,不能简单地用sql中的过滤条件来实现,因为剩余没有参与分组的记录也要在“其他”组中进行统计,而不是sql中过滤掉就行了。下面我们看看快逸报表中如何实现这样的报表。
二、设计过程
1、引用数据集demo_订单明细表
2、编辑报表
(1)A3单元格表达式:=demo_订单明细表.group(地区,false,地区=='华东' or 地区=='华北')
(2)B3单元格表达式:=demo_订单明细表.Group(城市,false)
(3)C3单元格表达式:=demo_订单明细表.sum(数量*单价),显示格式:¥#,##0.00
(4)B4单元格表达式:=demo_订单明细表.Group(城市,false,地区!='华东' and 地区!='华北')
(5)C4单元格表达式:=demo_订单明细表.sum(数量*单价),显示格式:¥#,##0.00
3、 保存预览
此报表保存为“地区销售统计表2”,预览结果如下:
三、小结
不完全分组
仅仅对数据集中的部分记录进行分组的报表,我们称为不完全分组报表。
对于不完全分组报表,快逸报表处理的很巧妙,select()和group()函数均带有过滤条件参数,可以在检索或者分组的时候,过滤掉无关的记录,仅仅对部分记录进行分组。之后还可以对同一个数据集重复进行多次的分组或者选出、汇总操作,从而可以实现很复杂的分组报表。