我有一个我无法解释的问题。考虑以下DAX指标:
Actual Spend :=
CALCULATE (
SUM ( 'Finance Actuals'[Amount] ),
FILTER (
ALLSELECTED ( 'Finance Period' ),
'Finance Period'[Fiscal_Date_Key] <= MAX ( 'Finance Period'[Fiscal_Date_Key] )
),
FILTER (
'Finance Actuals',
'Finance Actuals'[Calculated_Date_Key]
<= MAX ( 'Finance Forecasting Period'[Calculated_Date_Key] )
),
ALL ( 'Finance Calculated Data Snapshot Date' )
)
财务实际与&#39;之间存在关系。和&#39;财务计算数据快照日期&#39;。出于此措施的目的,我想忽略该关系并使用在不同表格中选择的预定义日期(&#39;财务预测期&#39;)。
一切正常,但该措施仍然受到“财务计算数据快照日期”变更的影响。我原本预计,添加度量的所有(&#39;财务计算数据快照日期&#39;)部分应该会导致忽略该表的更改。
我做错了什么?
答案 0 :(得分:0)
CALCULATE
函数将使用AND
逻辑应用其过滤器。我猜测正在发生的事情是在FILTER
上的'Finance Actuals'
函数中使用了该关系,添加ALL
函数不会改变任何内容。
尝试在第二个ALL
函数中移动FILTER
函数,因为这是需要应用它的位置。
答案 1 :(得分:0)
谢谢Alexis。
我不太确定如何将ALL
添加到定义的第二个过滤器中,因为它们与不同的表有关。但是,根据您的建议,我将该措施重新修改如下:
Actual Spend at Forecasting Period:=CALCULATE (
SUM ( 'Finance Actuals'[Amount] ),
FILTER (
ALLSELECTED ( 'Finance Period' ),
'Finance Period'[Fiscal_Date_Key] <= MAX ( 'Finance Period'[Fiscal_Date_Key] )
),
FILTER (
ALL('Finance Calculated Data Snapshot Date'),
'Finance Calculated Data Snapshot Date'[Calculated_Date_Key]
<= MAX ( 'Finance Forecasting Period'[Calculated_Date_Key] )
)
)
这有效并达到了我希望的结果,所以感谢你的建议。但是,我仍然对你的具体建议感到好奇
尝试移动第二个FILTER功能中的ALL功能 这就是它需要应用的地方。