如何按子公司字段对不同表的收支数据进行分组求和
解决Power BI中按子公司分别汇总实际与预测收款金额的问题
问题根源
当前表格重复显示所有子公司收支总和,是因为数据模型的筛选上下文未正确传递到收款维度表,导致子公司的筛选条件没有作用于实际/预测收款的计算逻辑。
解决步骤
1. 修正数据模型关系
确保星型架构的筛选路径完整:
- 给
DimSubCompanies[ClientID]分别与DimPaymentActual[ClientID]、DimPaymentForecasted[ClientID]建立一对多关系 - 确认
FactClients[ID](推测为ClientID字段)与所有维度表的ClientID完成关联,保证筛选上下文能从子公司维度传递到收款表
2. 创建精准度量值
根据模型关系情况,选择以下两种方式之一:
方式一:模型关系已正确建立
直接使用SUM函数,筛选上下文会自动通过关系传递:
-- 实际收款金额度量值 实际收款金额 = SUM(DimPaymentActual[Net to Client]) -- 预测收款金额度量值 预测收款金额 = SUM(DimPaymentForecasted[Net to Client])
方式二:模型关系未完善(临时替代方案)
使用TREATAS函数手动传递子公司的筛选条件:
-- 实际收款金额度量值 实际收款金额 = CALCULATE( SUM(DimPaymentActual[Net to Client]), TREATAS(VALUES(DimSubCompanies[ClientID]), DimPaymentActual[ClientID]) ) -- 预测收款金额度量值 预测收款金额 = CALCULATE( SUM(DimPaymentForecasted[Net to Client]), TREATAS(VALUES(DimSubCompanies[ClientID]), DimPaymentForecasted[ClientID]) )
3. 配置报表视觉对象
在表格组件中:
- 行字段选择
DimSubCompanies[SubCompanyName] - 值字段添加上述两个度量值
此时每个子公司行将仅显示对应自身的实际与预测收款总和,不会重复显示全局总计。
内容的提问来源于stack exchange,提问作者MyNameHere
相关产品推荐
相关产品推荐

