勤哲excel服务器教程:[3]分组小计
的有关信息介绍如下:通过观察我们可以发现一个规律,每一种产品都分为两层:规格层和小计层。如果是要填充各种规格的数量和金额,那么就按行列匹配到相应产品的规格层上,如果是要填充小计数量和金额,那么就按行列匹配到相应产品的小计层上。那么在勤哲excel服务器中,具体如何操作呢?
假设我们希望统计出如下格式的销售月报:
通过观察我们可以发现一个规律,每一种产品都分为两层:规格层和小计层。如果是要填充各种规格的数量和金额,那么就按行列匹配到相应产品的规格层上,如果是要填充小计数量和金额,那么就按行列匹配到相应产品的小计层上。
所以,解决这种问题的关键就是要分层。要实现分层的效果,这里需要用到一个辅助表。表样如下:
有了这个辅助表后,实现上述效果只需三条表间公式即可完成:
(1)提取产品名称和层数,到底分成几层,取决于辅助表的内容。
(2)提取规格层的数量和金额:做两次按行列匹配,一是匹配产品名称,二是匹配标识
(3)提取小计层的数量和金额:做两次按行列匹配,一是匹配产品名称,二是匹配标识
表样如图11-19所示。
建立“统计辅助表”:
主键 区域 字段名 数据类型 必填 填写规范 其它
B3:B6 标题文字 文字
C3:C6 标识 整数
填报一张辅助表,如图11-20所示:
说明:上述例子是分了两层,规格层和小计层,所以辅助表就填报了两行,“”1代表规格层,小计2代表小计层。
表样如图11-18所示。
建立“月报1_主表”:
下面就在《销售月报》模板上建立三条表间公式。
第一条表间公式的作用是分层,表间公式如下:
切换到【显示范围】选项卡,勾选:重复数据只显示一次。
注意,来源数据里有两个数据表,分别是:“物料表”和“统计辅助表”,但是它们没有做表间关联,不做表间关联的结果就是:两个表的填充字段做所有情况的组合。
填报一张《销售月报》,手工应用“提取品名”这条公式。结果如下,层次已经出来了。
这条表间公式的关键是做了两次按行列匹配,公式如下:
与上一条表间公式的道理一样,做两次按行列匹配,用2去匹配小计标志,如图:
以上是勤哲excel服务器关于分组报表的解决思路,在FineReport对分组报表的解读如下:
初级报表中的分组报表,是直接根据数据的父子关系实现的简单分组,中国式复杂报表中还存在一些不规则的分组报表,分组报表大致分为:相邻连续分组、按段分组、归并分组、自定义公式分组等几种类型。下面主要讲述相邻连续分组的报表制作方法:
数据库表数据是按照时间先后录入的,查询的时候希望按照时间先后,某个字段连续相同的话就合并起来显示,这样的报表可以通过相邻连续分组来实现。
打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\GroupReport\Group.cpt。
预览数据集ds1,可看到如下数据:
将地区字段的数据设置修改为分组>相邻连续:
保存模板,设计器中点击分页预览,便可以看到效果,模板效果在线查看请点击CusGroup_1.cpt
已完成的模板,可参见%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\GroupReport\CusGroup_1.cpt。
直接拖拽数据列到单元格,默认为普通分组,即将所有相同的项都合并起来显示;
相邻连续分组只是将连续相同的项合并起来。
相邻连续分组往往与SQL中排序结合使用来实现普通分组,但比直接使用普通分组性能更好,具体可查看巧用相邻连续分组文档。