Power BI Dax公式-表问题之和

时间:2020-04-13 10:22:53

标签: powerbi dax

我在报告中有一个表,该表显示了每个月末按年龄组划分的未结案件数,该表使用了一个与主数据表不同的年龄组表和一个日期表(在公式)。除了表格中的总数非常奇怪之外,其他表格似乎都有效 我在这里寻找解决方案,并有点理解为什么总合因上下文而无法在Power Bi表中工作,但不明白为什么我在这里得到如此低的数字以及它们的依据。

我的公式是这样:

Number Children by Age Group = 
VAR AgeMin = SELECTEDVALUE ( 'Age Group Table'[AgeMin] )
VAR AgeMax = SELECTEDVALUE ( 'Age Group Table'[AgeMax] )
RETURN
CALCULATE (
    DISTINCTCOUNT ( 'Child'[Person ID] ),
    FILTER (
        'Child',
        'Child'[Start_Date] <= MAX ( Dates[Date] )
            && ('Child'[End_Date] >= MAX ( Dates[Date] ) || ISBLANK ( 'Child'[End_Date] ) )
            && FLOOR ( DATEDIFF ( 'Child'[Date of Birth], MAX ( Dates[Date] ), DAY ) / 365.25, 1 ) >= AgeMin
            && FLOOR ( DATEDIFF ( 'Child'[Date of Birth], MAX ( Dates[Date] ), DAY ) / 365.25, 1 ) <= AgeMax
    )
)

我在表中得到的结果是:

Sample Result Screenshot

如果我在公式周围加总和,总数将增加到180左右,虽然更高,但仍然太低 我不必在表中列出总数,但我希望能够了解导致我对dax公式的了解不断增加的情况

1 个答案:

答案 0 :(得分:0)

通常,提供以下内容总是有用的:

  • 少量样本数据
  • 有关数据模型的相关信息

因此,人们可以更轻松地复制您的错误并测试解决方案。尽管如此,我已经看到了很多次这样的情况,解决该问题的标准过程如下:

  1. 设置DAX Studio以便运行DAX查询(稍后会看到原因)
  2. 使用性能分析器提取查询以生成该表。看起来类似于:

    DEFINE  /* this defines report-level measures and filter context */
    MEASURE Table1[Measure1] = ...
    
    VAR __dsfiltertable0 = ...
    
    VAR __dsfiltertable1 = ...
    ...
    EVALUATE  /* this evaluates the data used in the visualization */
    ...```
    
  3. 现在,您可以修改查询以提取(1)“ Child” [Person Id]的单列表,该表用于获取January&0-4years中的值,以及(2) -column表'Child'[Person Id],用于获取January&Total中的值。
    您可以在Excel中轻松导出此表并调查问题所在。

如果您迷路了,可以共享使用Performance Analyzer提取的查询,我可以为您生成要在DAX Studio中启动的查询。