历史版本20 :按段分组 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

按段分组是一个比较典型的高级分组报表样式,其分组是根据数据的值段来分的。

比如按照分数段、年龄段、时间段等,属于某个值区间的记录归到一个组里显示,如下图所示:

1571625591374659.png

2. 示例编辑

以下介绍上图企业年龄构成比例报表的制作过程。

2.1 报表设计

2.1.1 新建报表

新建普通报表,添加数据集 ds1,如图所示:

SQL 语句为:SELECT 雇员ID, 职务, cast(strftime('%Y','now') as int)-cast(strftime('%Y',出生日期) as int)+1 AS 年龄 FROM 雇员

1571626850532723.png

雇员表中存的是雇员的出生日期,因此在SQL中我们使用SQL函数strftime('%Y','now')-strftime('%Y',出生日期) +1,根据出生日期计算出员工的年龄。

2.1.2 报表样式

报表样式如下图所示:

1571628237881808.png

2.1.3 扩展方向

1)选中 A3 单元格,点击单元格属性>扩展>扩展方向,设置 A3 单元格为纵向扩展,如下图所示:

1571628763906676.png

2)选中 B2 单元格,点击单元格属性>扩展>扩展方向,设置 B2 单元格为横向扩展,如下图所示:

1571628817557339.png

2.1.4 数据设置

B3 单元格的数据列设置为汇总、个数。如下图所示:

1571629021701313.png

2.2 自定义条件分组

设计器预览模板,此时会将所有年龄都扩展出来,我们希望将年龄分成段显示。

选中年龄数据列所在单元格 B2,数据设置修改为分组、高级,如下图所示:

1571629275174116.png

点击上图的自定义按钮,弹出自定义分组对话框,选择条件分组。将年龄分成四段。

  • 组 1:命名为小于 20 岁,条件为年龄小于 20,如下图所示:

1571639682499030.png

  • 组 2:命名为 20~30 岁,条件为年龄大于等于 20 and 年龄小于 30,如下图所示:

1571639805857011.png

  • 组3:命名为 30~40岁,条件为年龄大于等于 30 and 年龄小于 40,如下图所示:

1571639860810822.png

  • 组 4:命名为大于 40 岁,条件为年龄大于等于 40,如下图所示:

1571639973904079.png

2.3 强制分组

由于没有符合小于 20 岁的年龄,因此预览时不显示小于 20 岁这一组。

若希望即使没有符合的的数据,仍然显示出所有定义的分组的话,可以在自定义分组界面选择强制分组,如下图所示:

1571640162325552.png

2.4 效果预览

2.4.1 PC 端

保存模板,选择分页预览,效果如1. 概述中所示。

2.4.2 移动端

1)App

1571640560657507.png

2)HTML5

1571640579701912.png

3. 已完成模板编辑

已完成的模板,可参见%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\GroupReport\按段分组.cpt

点击下载模板:按段分组.cpt