最新历史版本
:逐层平均值 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
1.1 应用场景
逐层平均值就是在分组报表中,每一组中分别将「第一层至当前层」数据相加然后求平均值,得到这一层的「累计平均值」。
例如下图示例,分别统计2010、2011上半年各月的累计平均值。
1.2 实现思路
本示例实现的是逐层平均值效果,所以实现起来会参照逐层累计那边的写法。
2. 示例编辑
2.1 数据准备
新建普通报表,新建数据集 ds1 ,SQL语句为:
select strftime('%Y',订购日期) as 年份, strftime('%m',订购日期) as 月份,应付金额
from 订单
where strftime('%Y',订购日期) >= '2010'
2.2 报表设计
如下图设计表格,将 ds1 中的字段拖到 A3、B3、C3 单元格,E3 单元格计算平均值。
E3 单元格公式为:(D3[B3:-1]*(&B3-1)+C3)/&B3,公式拆解后的说明如下表所示:
公式 | 说明 |
---|---|
D3[B3:-1] | B3 扩展出来的上一格(上月)的 D3 的值,即上个月的逐层平均值 |
&B3-1 | 获取单元格 B3 扩展后每个值对应的位置 -1 |
D3[B3:-1]*(&B3-1)+C3 | 该年份内到目前为止的总额累计值 |
&B3 | 获取单元格 B3 扩展后每个值对应的位置 |
(D3[B3:-1]*(&B3-1)+C3)/&B3 | 该年份中,每个月的累计平均值 |
2.3 效果预览
保存模板,点击分页预览,效果如下 1.1应用场景 中所示。
支持 App 端和 HTML5 端预览。
3. 模板下载编辑
已完成模板参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\逐层平均值.cpt
点击下载模板:逐层平均值.cpt