【问题标题】:DAX - Running total based on date filtering where same daily total is on multiple rows due to multiple outputs for same dayDAX - 基于日期过滤运行总计,由于同一天的多个输出,相同的每日总计在多行上
【发布时间】:2021-12-21 14:02:45
【问题描述】:

我正在尝试在 Power BI 中使用 DAX,但无论我如何尝试,我似乎都无法做到这一点。

我的源数据包含 SQL 中存储过程的输出,该存储过程根据一组原始数据计算多个验证检查的通过率和失败率,这些原始数据也每天更改行大小。因此,我每天的数据都具有相同数量的验证检查类型,并将每个检查的总行数作为相同的值 - 例如:

表格

Date Check Ref. Rows Passed Rows Failed Total Rows Checked
01/01/21 Check 1 20 200 220
01/01/21 Check 2 40 180 220
01/01/21 Check 3 60 160 220
01/01/21 Check 4 10 210 220
01/01/21 Check 5 15 205 220
02/01/21 Check 1 20 230 250
02/01/21 Check 2 200 50 250
02/01/21 Check 3 100 150 250
02/01/21 Check 4 40 210 250
02/01/21 Check 5 160 90 250
03/01/21 Check 1 290 10 300
03/01/21 Check 2 110 190 300
03/01/21 Check 3 25 275 300
03/01/21 Check 4 175 125 300
03/01/21 Check 5 20 280 300

等等。等等

我希望能够在报告选项卡中显示 KPI 卡,显示在任何特定日期检查的行数(例如 220 年 1 月 21 日)和我选择的任何日期的累积(运行)总数(例如,如果我选择了 02/01/21 和 03/01/21,我希望看到 550)

我试图创建一个快速度量来将检查的总行数除以日期计数(我认为应该等于 5) - 这适用于单个日期 - 但是当我在过滤器中选择多个日期时,我只是得到值的平均值。当我尝试按日期和检查的总行数的平均总和进行运行计数时,也会发生同样的情况。

我能够让它工作的唯一方法是给每个验证检查一个从 1 到 5 的索引,然后创建两个快速度量,首先给我任何检查的行数的值给定日期,然后在日期和创建的较早维度度量上创建运行总度量过滤:

Dimension Measure = 
        Calculate(
          SUM('Table'[Total Rows Checked]),
          'Table'[Check Ref. Index]
             in { 1 }

(where 1 refers to index 1 (check 1))

Running Total Measure = 
     Calculate (
         [Dimension Measure],
         FILTER(
            ALLSELECTED('Table'[Date]),
            ISONORAFTER('Table'[Date], MAX('Table'[Date]), DESC)
         )
)

这肯定是一种荒谬的做法,还有更好的方法吗?

对我的问题或其格式的任何失礼表示歉意 - 这是我的第一个问题!

提前谢谢你!

【问题讨论】:

    标签: dax powerbi-desktop cumulative-sum


    【解决方案1】:

    如何计算所选日期中每个日期的最大 [Total Rows Checked] 的总和?

    Rows Checked =
    SUMX (
        VALUES ( 'Table'[Date] ),
        CALCULATE ( MAX ( 'Table'[Total Rows Checked] ) )
    )
    

    或者,您可以像这样进行每天的第一次检查:

    Rows Checked =
    CALCULATE (
        SUM ( 'Table'[Total Rows Checked] ),
        'Table'[Check Ref.] = "Check 1"
    )
    

    【讨论】:

    • 嗨@Alexis Olson - 非常感谢 - 你是我的英雄!这很有帮助,现在很有意义。我的问题是我对 DAX 很陌生,所以对语法还不太熟悉,所以使用快速措施来感受我的方式!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 2017-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多