Forum Discussion

Stu11's avatar
Stu11
Frequent Visitor
4 years ago
Solved

Ranking Data

Hi,

I'm trying to add a rank to the below table in PBi. Each colum (Month,Team&Emplyee,Sumber of solves are in seperate tables)

 

The rank would need to rank each employee by team by month. So each team would have it's own sperate rank each month.


Tried doing this a couple of times to no avail. Any help would be appreciated.

 

MonthTeamEmployeeNumber of solvesRank
AprilTeam1Person120 
AprilTeam2Person230 
AprilTeam3Person348 
AprilTeam4Person465 
AprilTeam5Person570 
AprilTeam1Person62 
AprilTeam2Person93 
MayTeam3Person34 
MayTeam4Person45 
MayTeam5Person56 
MayTeam1Person77 
MayTeam2Person28 
MayTeam3Person869 
MayTeam4Person1056 
JuneTeam5Person526 
JuneTeam1Person1695 
JuneTeam2Person223 
JuneTeam3Person35 
JuneTeam4Person4545 
JulyTeam5Person55647 

Thanks

  • Hi,

    Please check the below picture and the attached pbix file.

     

     

    Number of solves: = 
    SUM ( Data[Number Of Solves] )

     

    Ranking per Month and per Team: = 
    VAR employeetable =
        ALLEXCEPT ( Data, 'Calendar'[Month], Team[Team] )
    RETURN
        IF (
            HASONEVALUE ( Employee[Employee] ) && NOT ISBLANK ( [Number of solves:] ),
            RANKX ( employeetable, [Number of solves:],, DESC )
        )
    
  • Stu11's avatar
    Stu11
    4 years ago

    Hi,

     

    In your example:

     

    "ALLEXCEPT ( Data, 'Calendar'[Month], Team[Team] )"

     

    I don't have a table named "data". All the tales are joined using a relationship. 

    Do I need to look at Crossjoin in order to get this to work?

     

    Thanks,

12 Replies

  • Hi,

    I am not sure how your expected outcome looks like, but please check the below picture and the attached pbix file.

    It is for creating a new column.

     

     

    Rank Employee by Team and by Month CC =
    VAR currentmonth = Data[Month]
    VAR currentteam = Data[Team]
    VAR newtable =
        FILTER ( Data, Data[Month] = currentmonth && Data[Team] = currentteam )
    RETURN
        RANKX ( newtable, Data[Number Of Solves],, DESC )
    
    • Stu11's avatar
      Stu11
      Frequent Visitor

      Hi,

      The outcome is perfect. Only issue is that these fields are not in the same table. The relate to one another.

       

      Table examples, Month,Team/Employee,Count of solved. This means I cannot create a new column.

       

      Would I need to create a new table?

      • Jihwan_Kim's avatar
        Jihwan_Kim
        Super User

        Hi,

        Thank you for your message.

        Please correct me if I missed something from your question, but is it separated by month? or by team? How many separared tables do you have? 

        If it is OK with you, could you please show how the each table looks like?

        Thank you.

  • Stu11's avatar
    Stu11
    Frequent Visitor

    Hi again,

     

    Got it working by creating a summary table. Using your code earlier. 

     

    Quick question, how can i make so the ranking ignore blanks (within the "

    'Summary Table'[Number of Tickets]" column?

     

    "

    Solved/Closed Ticket Ranking =
    VAR Currentmonth = 'Summary Table'[MonthYear]
    VAR Currentteam = 'Summary Table'[Team]
    VAR newtable = filter('Summary Table','Summary Table'[MonthYear]=Currentmonth && 'Summary Table'[Team] = Currentteam)
    RETURN

    rankx(newtable,'Summary Table'[Number of Tickets],,DESC,Dense)"
     
    Thanks,
     
    Stu
  • Stu11's avatar
    Stu11
    Frequent Visitor

    Hi again,

     

    Got it working using a summazried table.

     

    "

    Solved/Closed Ticket Ranking =
    VAR Currentmonth = 'Summary Table'[MonthYear]
    VAR Currentteam = 'Summary Table'[Team]
    VAR newtable = filter('Summary Table','Summary Table'[MonthYear]=Currentmonth && 'Summary Table'[Team] = Currentteam)

    RETURN

    rankx(newtable,'Summary Table'[Numer of Solved/Closed Tickets],,DESC,Dense)"
     
    Is the code above how could I make it so the rank ignore blanks?
     
    Thanks,
     
    Stu