【WEBI专题】解决在交叉表中计算占比、偏差、率的问题

 

要求如图

 

说明:

维:区域 、分公司、事业部、销售产品组

度量:销售金额

要求:

统计如图表格数据;

销售占比计算公式:产品组的销售金额 /对应事业部的销售数量,即 列5 / 列4;

销售偏差计算公式:(事业部产品组销售占比 -域总的销售占比 )/区域总的销售占比;

    区域总销售占比=sum(销售产品组销售金额)/sum(区域销售金额)

 

出现的问题:

1、在统计销售产品组的销售占比的时候,存在上下文的问题;

2、销售偏差比较麻烦。

解决办法:

1、销售占比,直接用聚合函数 Percentage();参考帮助

2、销售偏差,要用到上下文的概念,请参考webi自带帮助文件

=If(IsNull(Percentage([销售金额];Row));0;Percentage([销售金额];Row)/(Sum([销售金额] In([销售产品组]) In ([区域]))/Sum([销售金额] In ([区域]))) )

重要的事偏差的分母部分:销售产品组的销售总额与 区域总销售额的比=

(Sum([销售金额] In([销售产品组]) In ([区域]))/Sum([销售金额] In ([区域]))) )

3、小tap,算出来的数据如果有为零的情况下,要求显示为空,负值显示为红色

  !在数字格式 里进行设置,自定义格式:为零 处 打个空格,负值的地方在格式表示后加 [red]

 

 

 

 

 

百分比

说明

返回一个数值与另一个数值的比率

函数组

聚合

语法

number Percentage([measure];[BREAK];[ROW|COL])

输入

[度量]

报表中的任何度量

BREAK

解释表拆分(可选)

ROW|COL

计算方向(可选)

 

 

输出

当前计算上下文中的度量值与缺省嵌入上下文中的度量值的比率。

 

示例

下表中的“百分比”列包含公式 Percentage ([销售收入])

Year

销售收入

百分比

2001

1000

10

2002

5000

50

2003

4000

40

总和:

1000

100

 

 

默认情况下,嵌入上下文是表中的度量总计。您可以使用可选的 BREAK 参数,让该函数考虑表中的拆分。在此情况下,缺省的嵌入上下文变为表节。

下表中“百分比”列包含公式 Percentage ([Sales Revenue]; BREAK)

 

Year

Quarter

销售收入

百分比

2001

第 1 季度

1000

10

 

第 2 季度

2000

20

 

第 3 季度

5000

50

 

第 4 季度

2000

20

2001

总和:

10000

100

 

 

Year

Quarter

销售收入

百分比

2002

第 1 季度

2000

20

 

第 2 季度

2000

20

 

第 3 季度

5000

50

 

第 4 季度

1000

10

2002

总和:

10000

100

 

 

可以跨列或跨行使用 Percentage 函数;可以使用可选的 ROW|COL 参数明确指定这种用法。例如,以下交叉表中的“百分比”列包含公式 Percentage ([Sales Revenue];ROW)。

 

 

第 1 季度

百分比

第 2 季度

百分比

第 3 季度

百分比

第 4 季度

百分比

2001

1000

10

2000

20

5000

50

2000

20

2002

2000

20

1000

10

4000

40

2000

20

posted @ 2012-12-07 22:34  hanmos  阅读(1009)  评论(0编辑  收藏  举报