比值报表

一、报表实例

我们看看下面这个报表例子:

 在这个报表中,按照销售额从大到小排列。和第一名的差距这个指标的运算逻辑是:第一名的销售额 - 当前销售的销售额。这些在快逸报表中该如何实现呢?

二、设计过程

1、引用数据集ds25

2、编辑报表

(1)A2单元格的表达式为:=&B2,设置A2的左主格为B2

(2)B2单元格的表达式为:=ds25.Group(销售人员,false,,,ds25.sum(数量*单价),true)

(3)C2单元格的表达式为:=ds25.sum(数量*单价),显示格式:¥#,##0.00,缩进:3

这个报表中,通过B2单元格表达式中group()函数的排序功能,实现按照销售额从大到小排列。对于A2单元格的名次表达式,要知道某个扩展出来的格子在所有扩展出来的格子中排第几,就用到了&运算符,它可以获得当前单元格所属的某主格在所有扩展出来的格子中排第几。

和第一名的差距这个指标的运算逻辑是:第一名的销售额 - 当前销售的销售额。从图中可以看出,D2格的表达式最关键的在于如何表达出“第一名的销售额”,该报表是按照销售额从大到小排列的,因此第一名的销售额肯定是第一个C2格。如何在报表扩展前在表达式中描述出扩展后的第N个C2格呢?这里用到了快逸报表非线性模型中的层次坐标,我们把D2单元格的表达式写成:=C2[1]-C2。

3、保存预览

此报表保存为“比值报表”,预览结果如下:

 三、小结 

次坐标的简单写法

目标单元格Cellx本身是扩展单元格时,层次坐标的简单表示法为:Cellx[n],Cellx[;n],其中Cellx[n]表示其纵向扩展后的第n个单元格,Cellx[;n]表示其横向扩展后的第n个单元格。

在本节的报表实例中,C2[1]表示C2单元格扩展出来的第一个单元格的值。

课后练习:

制作如下图所示的比值报表,数据从course数据源的EMPLOYEE表中选取。