Sumif 使用页面、报告和视觉级别过滤器
Sumif using page, report and visual level filters
我有两个 table,它们通过一个名为 'Program_Code' (1:Many) 的 ID 列相关联。
'Program_Summary':
程序代码 = 每行都有一个唯一的 ID,例如HI-18, HI-17
程序名称 = 程序名称,例如家装
激励支出=计算(总和(Program_Data[激励]))
'Program_Data':
程序代码=许多行具有相同的ID
奖励 = 在计划摘要中总结的奖励金额 table
记录状态 = 已声明、待审核或已拒绝
- 创纪录的财政年度 = 2017、2018 或 2019
我创建了一个 Power BI table,其中的行按 'Program Name' 组织。请注意,每个程序名称如 "Home Improvement" 可能有多个代码与之关联,例如HI-18和HI-17对应会计年度。
我希望按项目名称汇总激励支出,并使用 page/report 级别过滤器来限制结果。报告级别过滤器是:
- 创纪录的财政年度 = 2017
- 记录状态 = 已声明
但是,calculate(sum(Program_Data[Incentives])) 过滤器会忽略这些页面级过滤器。我该如何解决这个问题?
您可以使用:
CALCULATE(sum(Program_Data[Incentives]);Program_Data[Record Fiscal Year] = 2017 && Program_Data[Record Status] = "Claimed")
但是,我不明白你为什么需要这个,因为你有 2 个表 link,这应该为你提供 table/matrix 可视化的所有可能性,你需要显示正确的内容结果..
您创建了 "Incentive Spending" 作为计算列。相反,您需要将其创建为 measure.
计算列仅计算一次 - 当您创建它们时,或当您重新加载数据时。之后,计算列只包含静态数据,不能响应任何过滤器。
另一方面,度量是动态公式,它会在您更改任何过滤器时重新计算。
要解决您的问题,只需从 "Modeling" 选项卡创建一个新度量:
并添加 DAX 代码:
Incentive Spending = SUM(Program_Data[Incentives])
(此处无需使用 CALCULATE)。
将此度量放入 table 或矩阵中,它应该会起作用。我建议使用切片器,而不是 page/report 级过滤器——为财政年度创建一个切片器,为记录状态创建另一个切片器。它们将允许您轻松过滤计算。
我有两个 table,它们通过一个名为 'Program_Code' (1:Many) 的 ID 列相关联。
'Program_Summary':
程序代码 = 每行都有一个唯一的 ID,例如HI-18, HI-17
程序名称 = 程序名称,例如家装
激励支出=计算(总和(Program_Data[激励]))
'Program_Data':
程序代码=许多行具有相同的ID
奖励 = 在计划摘要中总结的奖励金额 table
记录状态 = 已声明、待审核或已拒绝
- 创纪录的财政年度 = 2017、2018 或 2019
我创建了一个 Power BI table,其中的行按 'Program Name' 组织。请注意,每个程序名称如 "Home Improvement" 可能有多个代码与之关联,例如HI-18和HI-17对应会计年度。
我希望按项目名称汇总激励支出,并使用 page/report 级别过滤器来限制结果。报告级别过滤器是:
- 创纪录的财政年度 = 2017
- 记录状态 = 已声明
但是,calculate(sum(Program_Data[Incentives])) 过滤器会忽略这些页面级过滤器。我该如何解决这个问题?
您可以使用:
CALCULATE(sum(Program_Data[Incentives]);Program_Data[Record Fiscal Year] = 2017 && Program_Data[Record Status] = "Claimed")
但是,我不明白你为什么需要这个,因为你有 2 个表 link,这应该为你提供 table/matrix 可视化的所有可能性,你需要显示正确的内容结果..
您创建了 "Incentive Spending" 作为计算列。相反,您需要将其创建为 measure.
计算列仅计算一次 - 当您创建它们时,或当您重新加载数据时。之后,计算列只包含静态数据,不能响应任何过滤器。
另一方面,度量是动态公式,它会在您更改任何过滤器时重新计算。
要解决您的问题,只需从 "Modeling" 选项卡创建一个新度量:
并添加 DAX 代码:
Incentive Spending = SUM(Program_Data[Incentives])
(此处无需使用 CALCULATE)。
将此度量放入 table 或矩阵中,它应该会起作用。我建议使用切片器,而不是 page/report 级过滤器——为财政年度创建一个切片器,为记录状态创建另一个切片器。它们将允许您轻松过滤计算。