Forum Discussion

rogerdea's avatar
rogerdea
Helper IV
5 years ago
Solved

Struggling with RANKX

Hi again

 

I'm struggling to get a simple rank working, but in addition to this want an additional ranking column to show the rank within another grouping.  My sample pbx is attached, and this is the result i am trying to achieve:

 

Desired results with 2 x new rank measures:

Rank overall is just the rank descending based upon Total Score.  The Location Rank is the Rank within each Location_Group.

 

Data is :.

 

LocationLocation_GroupScore
BirminghamMidlands2.6
ManchesterNorth3.1
TorquaySouth2.1
BirminghamMidlands1.3
ManchesterNorth1.4
TorquaySouth2.9
BirminghamMidlands3.6
ManchesterNorth1.2
TorquaySouth4
BirminghamMidlands2.1
ManchesterNorth1.8
TorquaySouth3.1
SolihullMidlands1.6
LeedsNorth2.1
PlymouthSouth3.6
SolihullMidlands2.1
LeedsNorth0.5
PlymouthSouth1.1
SolihullMidlands2.5
LeedsNorth3.1
PlymouthSouth0.3
BradfordNorth2.5
CoventryMidlands1.6
PlymouthSouth1.6
BradfordNorth2.9
CoventryMidlands3.4
PlymouthSouth5.1
BradfordNorth2.6
CoventryMidlands0.9

 

Thanks

Roger

  • Fowmy's avatar
    Fowmy
    5 years ago

    rogerdea 

    I checked the file, you need to insert the location and the location group from the areas table to the visual:

    You can download the file: HERE

     

    Location Rank = 
    
    RANKX(
        ALLSELECTED(Areas[Location]),
        CALCULATE(SUM(Scores[Score]))
    )
    
    --------------------------------------------------------
    
    Overall Rank = 
    
    RANKX(
        ALLSELECTED(Areas[Location],Areas[Location_Group]),
        CALCULATE(SUM(Scores[Score]))
    )

    ________________________

    If my answer was helpful, please click Accept it as the solution to help other members find it useful

    Click on the Thumbs-Up icon if you like this reply πŸ™‚


    Website YouTube  LinkedIn

     



6 Replies

  • rogerdea 

    Here are the two ranking measures:

     

    Overall Rank = 
    
    RANKX(
        ALL(T9[Location],T9[Location_Group]),
        CALCULATE(SUM(T9[Score]))
    )
    location Rank = 
    
    RANKX(
        ALL(T9[Location]),
        CALCULATE(SUM(T9[Score]))
    )

     

     

     

    ________________________

    If my answer was helpful, please click Accept it as the solution to help other members find it useful

    Click on the Thumbs-Up icon if you like this reply πŸ™‚


    Website YouTube  LinkedIn

    • rogerdea's avatar
      rogerdea
      Helper IV

      Thanks very much and i got the simpler DAX working however i've now realised in my real work rather than this example the [Location_Group] is stored in another table.  And using this dax below gives me the error when trying to use the location_group in this other table:

       

      "All column arguments of the ALL/ALLNOBLANKROW/ALLSELECTED/REMOVEFILTERS function must be from the same table."

       

      So for the DAX:

       

      RANKX = 

      ALL(T9[Location]),T9[Location_Group]),

      CALCULATE(SUM(T9([Score]))

      )

       

      If T9[Location_Group]) was from another table in the powerBI how could this work or be written?

       

      Thanks

       

      • Fowmy's avatar
        Fowmy
        Super User

        rogerdea 

        What is the relationship between the tables? Can you share a dummy PBIX file that represents your actual model? 

        ________________________

        If my answer was helpful, please click Accept it as the solution to help other members find it useful

        Click on the Thumbs-Up icon if you like this reply πŸ™‚


        Website YouTube  LinkedIn