小计不反映基础行计算的总和
Subtotal not reflecting sum of underlying row calculations
这有点类似于我的问题 ,但我认为不同之处足以证明一个新问题的合理性。查看下面的 table,我想计算所有地区的直接费用总额,仅从美洲费用数字中减去,然后合计结果。
我希望最后一列的总数为 17,661,而不是 54,888。这是 OneDrive 上的示例工作簿的 link,上面 table:https://1drv.ms/u/s!Al7VQqB8RVlWgY4mUYqouesRPNE0qw?e=IiMPnq 有什么想法吗?
您的衡量标准有两个问题:
- 它缺少上下文转换,这可以通过添加来修复
CALCULATE
需要上下文转换的地方
[Total Direct Expense total for Region (c)]
使用ALLSELECTED
,
它在迭代器中调用。但我们可以移动措施
在迭代之前使用变量代替。 (13703这个数字是错误的)
然后度量变为
Final Result (a-c) =
VAR TotalExpense = [Total Direct Expense total for Region (c)]
RETURN
SUMX (
VALUES ( Sheet1[Region] ),
IF (
Sheet1[Region] = "Americas",
CALCULATE (
SUM ( Sheet1[Total Expense (a)] ) - TotalExpense
),
CALCULATE (
SUM ( Sheet1[Total Expense (a)] )
)
)
)
现在最后的结果是
关于 ALLSELECTED 的相当复杂的文章解释了什么是影子过滤器以及为什么在迭代中的上下文转换后调用 ALLSELECTED 不能像预期的那样工作可以在这里找到 https://www.sqlbi.com/articles/the-definitive-guide-to-allselected/
这有点类似于我的问题
我希望最后一列的总数为 17,661,而不是 54,888。这是 OneDrive 上的示例工作簿的 link,上面 table:https://1drv.ms/u/s!Al7VQqB8RVlWgY4mUYqouesRPNE0qw?e=IiMPnq 有什么想法吗?
您的衡量标准有两个问题:
- 它缺少上下文转换,这可以通过添加来修复
CALCULATE
需要上下文转换的地方 [Total Direct Expense total for Region (c)]
使用ALLSELECTED
, 它在迭代器中调用。但我们可以移动措施 在迭代之前使用变量代替。 (13703这个数字是错误的)
然后度量变为
Final Result (a-c) =
VAR TotalExpense = [Total Direct Expense total for Region (c)]
RETURN
SUMX (
VALUES ( Sheet1[Region] ),
IF (
Sheet1[Region] = "Americas",
CALCULATE (
SUM ( Sheet1[Total Expense (a)] ) - TotalExpense
),
CALCULATE (
SUM ( Sheet1[Total Expense (a)] )
)
)
)
现在最后的结果是
关于 ALLSELECTED 的相当复杂的文章解释了什么是影子过滤器以及为什么在迭代中的上下文转换后调用 ALLSELECTED 不能像预期的那样工作可以在这里找到 https://www.sqlbi.com/articles/the-definitive-guide-to-allselected/