Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Row based running total

Hi, I have a table /matrix where i can show running total measure in a column but i would like to show it as row based in a martix. As a example: Month  A B Jan  3 5 Total  ?( running...
  • amitchandak's avatar
    amitchandak
    4 years ago

    Anonymous , If you use only a month, you will not get the total. Use two measures profit and Running total profit

    Cumm Sales = CALCULATE(SUM(Table[Profit]),filter(allselected('Date'),'Date'[date] <=max('Date'[date])))

     

    Use date table, take month year from date table.

     

    Enable Show on Row in matrix

  • v-jinweili-msft's avatar
    4 years ago

    Hi Anonymous ,

     

    1. To add the “Total” rows , please create a new table:

     

    Table 2 =
    VAR _T1 =
        ADDCOLUMNS (
            DISTINCT ( 'Table'[Month] ),
            "Index", MONTH ( CONVERT ( [Month] & " 1", DATETIME ) )
        )
    VAR _T2 =
        CROSSJOIN ( ROW ( "Month", "Total" ), { 1, 2 } )
    RETURN
        UNION ( _T1, _T2 )

     

    2.Since there is only month name in your original table, please firstly extract Month Number ,which is used to compare.

     

    Month Number =
    MONTH ( CONVERT ( MAX ('Table' [Month] ) & " 1", DATETIME ) )

     

    3.To match the value of “Month” and “Total”, please try:

     

    Measure =
    SWITCH (
        MAX ( 'Table 2'[Month] ),
        "Total",
            CALCULATE (
                SUM ( 'Table'[Profit] ),
                FILTER ( 'Table', [Month Number] <= MAX ( 'Table 2'[Index] ) )
            ),
        CALCULATE (
            SUM ( 'Table'[Profit] ),
            FILTER ( 'Table', [Month] = MAX ( 'Table 2'[Month] ) )
        )
    )

     

    Output:

     

    Best Regards,
    Jinwei Li
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.