我正在寻找有关如何编写特定DAX指标的帮助。这是我的数据和模型的简化版本:
型号:
措施:
Total Amt:=SUM(Amounts[Amt])
Total Pos Amt:=SUMX(Amounts, IF([Amt]<0,0,[Amt]))
Total Amt All:=CALCULATE([Total Pos Amt],ALL(Ptr))
Total Amt All 2:=SUMX(Bridge,CALCULATE([Total Pos Amt],ALL(Ptr)))
Total Amt All 3:=SUMX(VALUES(Bridge[Pri]),CALCULATE([Total Pos Amt],ALL(Ptr)))
正如您在第一个数据透视表中所见(其中[Pri]和[Ptr]是行字段),突出显示的单元格显示有问题的值。 [总Pos Amt]度量通过迭代它并评估负值被视为零且保留正数量的表达式,对Amounts表中的[Amt]列进行求和。在[Pri]级粒度下,我希望应用相同的逻辑(即在[Ptr]级别评估表达式)。 [Total Amt All]测量的问题是,在数据透视表中,我在[Pri] A下获得[Ptr] Z的一行,这是我不想要的。测量[Total Amt All 2]和[Total Amt All 3]解决了这个问题,但[Pri Amt全部2]中[Pri]级别的小计是错误的,并且[Total Amt All 3]中的总计是错误的。< / p>
任何帮助将不胜感激!如何编写一个不会显示与[Bridge]表中的[Pri]无关的[Ptr]的度量,但是还能正确地总结[Pri]级别的[Total Pos Amt]度量?< / p>
答案 0 :(得分:1)
因此,您的一个问题可能是您在数据透视表中使用的字段。我通过使用您的桥表作为字段来实现它:
TotalAmtBridged:=CALCULATE ( SUMX(Amounts, IF([Amt]<0,0,[Amt]) ) , Bridge )
FinalTotalAmt:= Calculate([TotalAmtBridged], ALL(Bridge[Ptr])
然后数据透视表使用Bridge [Pri]和Bridge [Ptr]。所以TotalAmtBridged只是强制你的总金额使用Bridge上下文,然后FinalTotal说忽略Ptr(即我们显示的每一行只计算Bridge [Pri]的总金额)。
然后总计已经这样做了,所以鲍勃是你的叔叔。