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

原文地址:https://www.cnblogs.com/hanmos/p/3084968.html