Fixed是什么:fixed是一种可以独立于视图中的内容制定计算的计算方式,简单来说也是“对于每一个维度计算聚合的表达式”。

语法如下:

{FIXED [维度1],[维度2]:计算表达式 [度量]}

例子:对于每一个类别,计算销售额的总和。

{FIXED [类别]: Sum([总计])}

例子二:对于每一个类别,计算销售额的平均数

{FIXED [类别]: Avg([总计])}

当然您也可以不指定任何维度,这将计算给定聚合表达式的总计如下

{FIXED : Sum([总计])}

提示:这里您可以跳过FIXED和冒号 {SUM([总计])}直接输入

{Sum([总计])}

这将具有和FIXED相同的结果

fixed函数 - 图1

对于每一种LOD的计算方式都是单独计算,因此LOD的使用数据仅取决相关LOD

实际Fixed的使用

原始数据:

fixed函数 - 图2

问题描述

希望在一个视图中同时显示以下多个级别的销售额数据

  • 详细数据
  • 类别级别的总结
  • 总计

解决方法

使用fixed函数创建一个度量值

fixed函数 - 图3

拖入视图,可以看到下面对于同一类别中的不同详细类别,得到相同的值(类别总计一列)。例如,固定零件、肉类等不同补给品,对应的类别总计金额相同。

fixed函数 - 图4

fixed函数 - 图5

类似地,对于总计级别,创建新的度量并将其添加到视图中。

fixed函数 - 图6

可以看到,对于所有记录,总合计一列的值相同。

fixed函数 - 图7

SUM()求和 和 FIXED 的计算的区别在于,SUM计算将根据视图中的内容进行计算,而 FIXED LOD 将根据 LOD 中指定的维度和度量进行计算。

计算百分占比关系

假如想通过知道某一类别商品销售额占全销售额的百分比情况,这时可以在计算中使用FIXED。

创建一个名为占比情况的字段

fixed函数 - 图8

我们把创建好的字段拖入视图。此时,新建的字段占比情况显示每一项详细类别的销售金额占全年销售的占比情况。

fixed函数 - 图9


fixed优先级

IMG_256

fixed 不受视图上面(图表)维度,即维度过滤器的影响。

例如,当我们现在只想看到椅子、床、办公桌的销售情况时,通过筛选在详细类别里面保留对应选项,可以看出LOD值不随详细类别的改变而改变。

fixed函数 - 图11

同时,fixed的优先级高于数据筛选和筛选器控件筛选,如果希望fixed受到筛选器的筛选,则需要提高筛选器控件和数据筛选的优先级。

筛选器控件筛选:

fixed函数 - 图12

数据筛选:

fixed函数 - 图13