目录:
1. 描述编辑
如下面总额中扩展出来的每个值与其第一个值进行比较:
2. 示例编辑
2.1 打开报表
打开报表%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\占比.cpt。
将占比改为比较,修改如下:
2.2 比较
在 C3 单元格中,输入公式=B3 - B3[A3:1],表示 B3 单元格扩展出来的每一个值与 B3 单元格扩展出来的第一个值的差。
其中B3[A3:1]表示 A3 单元格扩展出来的第一个值对应的 B3 的值,B3[A3:1,B3:1],即表示 B3 扩展出来的第一个值。
2.3 保存与预览
保存模板,点击分页预览,效果如上。
模板效果在线查看请点击 差值.cpt
已完成模板可参考%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\差值.cpt。
3. 总结-绝对层次坐标编辑
3.1 描述
某些报表中,可能需要对扩展后的单元格精确定位,然后参与运算,如上比较例子。然而在单元格扩展前,单元格会扩展出多少格子及格子所在的位置,在扩展前很难描述。因此,FineReport 中通过层次坐标的概念来对扩展后的单元格进行唯一性定义。
绝对层次坐标就是通过绝对位置来精确定位扩展后的单元格,定位规则如下:
说明:
Cellx:指目标单元格,是 Lk,Lk-1...L1;Tk,Tk-1...T1 的附属格。
Lk:指某个目标单元格 Cellx 的左父格,Lk 的次序是从远到近的,也就是从离当前格最远的左父格开始,也可以理解为从最高级别的分组格开始。
lk:指左父格 LK 扩展后的次序,即扩展后的第几个单元格,如果不指定 lk 或 lk 为 0,则表示为当前表达式所在单元格所属的当前左父格 LK。
Tk:指某个目标单元格 Cellx 的上父格,Tk 的次序也是从远到近的,也就是从离当前格最远的上父格开始,也可以理解为从最高级别的分组格开始。
tk:指上父格 Tk 扩展后的次序,即扩展后的第几个单元格,如果不指定 tk 或 tk 为 0,则表示为当前表达式所在单元格所属的当前上父格 TK。
注1:如果只有左父格没有上父格,分号可以省略,即 Cellx[Lk:lk,LK-1:lk-1,......,L1:l1];
注2:如果只有上父格没有左父格,分号不能省略,即 Cellx[;Tk:tk,Tk-1:tk-1......,T1:t1]。
3.2 示例