Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

Check highest value for multiple fields

I'm working on a requirement to find the highest value out of the Quarter & Name using a Result value to check. I've managed to get it to work to an extent, by which it looks at the highest value per quarter out of all the filtered names but this isn't what I'm after.

 

Rather than this, the idea is to show the highest value per quarter for each name rather than the highest overall. Below is what the expectation is (you can see I've used a red box to show the highest value)

 

 

The code I have to date is:

CopyCheckMinMax = 
VAR temp_table =
    SUMMARIZE (
        ALLSELECTED (
            Table1[Quarter],
            Table1[Name]
        ),Table1[Event Log], Table1[Name],
        "@Total", SUM ( Table1[Result] )
    )
RETURN
    IF (
        MAXX (
            temp_table,
            [@Total]
        )
            = SUM ( Table1[Result] ),
        1,
        0
    )

Using conditional formatting rules, if the value is 1 then it will be highlighted as such. I believe I need to incorporate the Name somewhere into this but I am not sure where?

  • Please try this approach

     

    IsHighest =
    VAR thisresult =
    SUM ( Table1[Result] )
    VAR quartermax =
    MAXX ( ALLSELECTED ( Table1[Quarter] ), CALCULATE ( SUM ( Table1[Result] ) ) )
    RETURN
    IF ( thisresult = quartermax, 1, 0 )

     

     

    If this works for you, please mark it as the solution.  Kudos are appreciated too.  Please let me know if not.

    Regards,

    Pat

4 Replies

  • mahoneypat's avatar
    mahoneypat
    Microsoft Employee

    Please try this approach

     

    IsHighest =
    VAR thisresult =
    SUM ( Table1[Result] )
    VAR quartermax =
    MAXX ( ALLSELECTED ( Table1[Quarter] ), CALCULATE ( SUM ( Table1[Result] ) ) )
    RETURN
    IF ( thisresult = quartermax, 1, 0 )

     

     

    If this works for you, please mark it as the solution.  Kudos are appreciated too.  Please let me know if not.

    Regards,

    Pat

    • Anonymous's avatar
      Anonymous
      Not applicable

      That's the one, legend!

  • Anonymous , I think you need to replace qtr with with month , then on top of month it will give max

     

    CopyCheckMinMax = 
    VAR temp_table =
        SUMMARIZE (
            ALLSELECTED (
                Table1[Month],
                Table1[Name]
            ),Table1[Event Log], Table1[Name],
            "@Total", SUM ( Table1[Result] )
        )
    RETURN
        IF (
            MAXX (
                temp_table,
                [@Total]
            )
                = SUM ( Table1[Result] ),
            1,
            0
        )
    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi amitchandak thanks for you reply. There isn't a Month to choose from unfortunately so this wouldn't work.