同期比
1. 问题描述
同期比是把当年每月与上一年相应月份的数据进行一个比率。如下图:
2. 示例
2.1 打开报表
打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\占比.cpt。
修改ds1数据集SQL为select strftime('%Y',订购日期) as 年份, strftime('%m',订购日期) as 月份,应付金额 from 订单,查询出所有年月下的金额。
并修改报表如下:
在D3单元格中,输入公式:=IF(&A3 > 1, C3 / C3[A3:-1], 0),父格为月份单元格,跟随月份扩展:当&A3>1即从第二年开始,当月金额比上上一年相应月金额,否则显示0。
其中C3[A3:-1]表示当前C3,所在的A3(年份)单元格往上偏移一个位置(去年)中与当前月在相同位置的月所对应的C3单元格的值,即等价于C3[A3:-1,B3:+0]。
2.3 保存并预览
保存模板,点击分页预览,效果如上。模板效果在线查看请点击同期比.cpt
已完成模板可参考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\同期比.cpt。
3. 总结-相对层次坐标中的父格
3.1 描述
我们知道相对层次坐标定位规则为:Cellx[Lk:±lk,LK-1:±lk-1,......,L1:±l1;Tk:±tk,Tk-1:±tk-1......,T1:±t1]
父子格有层级的概念,如上例中D3的父格为B3,而B3的父格为A3,那么对D3来说,A3就是高级父格。如果对单元格Cellx的高级父格如这里的A3进行了定位,而对下面的父格没有定位时,相对层次坐标会将它缺省为高级父格中与下级父格的相同位置,即下级父格偏移为+0。
3.2 示例
4.1问题描述
当年同期比的月与上年同期比的月份不一一对应的时候,我们发现这种单元格的写法就不满足我们的需求了
如图所示:
4.2解决示例
解决思路: 需要同时判断 高级父格与下级父格的,写法如下图所示。
EVAL(CONCATENATE("if(&A3>1,C3/C3[!0]{A3=",A3-1,"&&B3=$B3},0)"))
含义解释: {A3=",A3-1,"&&B3=$B3} 这里表达的意思为:
A3=",A3-1," (指上一年年份)
B3=$B3(月度相同)
4.3保存并预览
已完成模板可参考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\同期比-月份不对应.cpt。


如此即完美解决了,月份不相同是同期比的问题。
附件列表
标签:
已验证
文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201)



4. 月份不一一对应的情况