【问题标题】:Running total of a Measure度量的运行总计
【发布时间】:2017-10-23 13:56:12
【问题描述】:

我希望创建一个 MEASURE 的运行总计(此处名称为 Open vs Closed)。除了最后一个“Total Open”之外,我的所有列都是正确的。 有人知道将其作为 Open vs Closed 列的总和的衡量标准吗?

WeekIndex |Open Incidents | Closed Incidents | Open vs Closed | Total Open
1         | 5             | 0                | +5             | 5
2         | 4             | 5                | -1             | 4
3         | 2             | 0                | +2             | 6
4         | 3             | 3                | +0             | 6
5         | 10            | 12               | -2             | 4

【问题讨论】:

    标签: excel powerbi powerpivot dax measure


    【解决方案1】:

    在这种情况下,使用EARLIER 函数的计算列可以做到:

    Total Open = 
    CALCULATE(
        SUM('Table'[Open vs Closed]),
        FILTER(
            'Table',
            'Table'[WeekIndex] <= EARLIER('Table'[WeekIndex])
        )
    )
    

    结果:


    更新:

    以下措施应该适用于这种情况。需要ALL函数在放入表时忽略行级上下文:

    Total Open Measure = 
    CALCULATE(
        [Open vs Closed Measure],
        FILTER(
            ALL('Table'),
            'Table'[WeekIndex] <= MAX('Table'[WeekIndex])
        )
    )
    


    第二次更新:

    考虑到所有列都是度量的奇怪情况:

    Total Open Measure = 
    VAR CurrentIndex = [Index]
    RETURN
    CALCULATE(
        [Open vs Closed Measure],
        FILTER(
            ALL('Table'),
            [Index] <= CurrentIndex
        )
    )
    


    第三次更新:

    我只能想出一个使用MonthIndex 的方法。我认为额外的6 的原因是由于您计算Incidents Closed 的方式。无论如何,我通过将'Calendar'[MonthIndex] &gt;= 1 添加到过滤器来修复它:

    Total Open Measure = 
    CALCULATE(
        [Open vs Closed],
        FILTER(
            ALL('Calendar'),
            'Calendar'[MonthIndex] >= 1 &&
            'Calendar'[MonthIndex] <= MAX('Calendar'[MonthIndex])
        )
    )
    

    为了过滤掉没有事件的行,我在 Index 度量上添加了一个可视级别过滤器:

    【讨论】:

    • 嗨,问题是我没有为此使用表格,而只是使用计算字段。 Open vs Closed 是一个计算字段
    • 我不太明白。我的Open vs Closed = 'Table'[Open Incidents] - 'Table'[Closed Incidents] 也是一个计算列。
    • 您的 Open vs Closed 是“表格”表中的一个列。我的表中没有打开与关闭的列。我的 Open vs Closed 是一个度量 Open Incidents = COUNTA(Incident[Incident ID]) Closed Incints = CALCULATE([Incidenten geopend];USERELATIONSHIP('Calendar'[Date];Incident[Datum gereed])) Open vs. Closed =[Open Incidents]-[Closed incidents]
    • 那是因为在您的问题中您说“我希望创建一个 calculated column 的运行总数(此处名称为 Open vs Closed)。” ..
    • 那么您的Open vs Closed 是度量值而不是计算列?
    猜你喜欢
    • 1970-01-01
    • 2023-01-21
    • 1970-01-01
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多