我刚刚开始使用Powerpivot,我的第一个应用程序提出了一些我认为会遇到的更难的问题......这是我的问题:
我有3张桌子:factRepairs; factCorss; dimSpares
factRepairs:
factCross
dimSpares
factRepairs通过Repair列之间的关系链接到factCross,而factCross通过Spare ID< - > Spare
链接到dimSpares我想添加一个计算列(或测量,在此阶段不确定),以提供用于一次修复的备件成本。
我一直在寻找解决方案一段时间,但我没有设法解决它... 如果有人可以指导我完成一个公式,我将不胜感激!
谢谢,
答案 0 :(得分:2)
你认为多对多在PowerPivot中是一个非常重要的问题是正确的!
好消息是,这可能是一个数据结构问题,而不是纯粹的基础多对多情况,可以通过factCross
表上的计算列轻松解决。这有点像excel中的SUMIF,不需要关系:
= CALCULATE(SUM(dimSpares[price]),
FILTER(dimSpares,
dimSpares[id] = EARLIER([spare id])
)
)
然后,您可以编写一个度量/计算字段来汇总成本,如果您在factRepairs
和factCross
之间建立关系,那么您应该开展业务。
如果你正在寻找一种更复杂的方法来处理这些问题,那么试试the Many to Many revolution但老实说这和DAX一样复杂,所以我会专注于更简单的东西: - )