Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Data Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more

Reply
Anonymous
Not applicable

Using RANKX with filter for max Year

Hey Guys,

I am ranking my clients based on two measures one is the client score and second is total revenue.
Since i have many clients some clients have the same client score hence the ranking based on total revenue.

Now the issue here is that i want the measure to be filtered by the maximum Financial Year.
So i wrote the below code: 

Ranking_Clients = 
Var MaxYear=MAX('Fiscal Years'[FY])
Return
IF(ISFILTERED('Fiscal Years'[FY]),
 RANKX (
    ALL ( 'Responses received' ),
    RANKX ( ALL ( 'Responses received' ),[Client Score],, DESC )
        + DIVIDE (
            RANKX ( ALL ( 'Responses received' ),[Total Revenue] ,, DESC ),
            ( COUNTROWS ( ALL ( 'Responses received' ) ) + 1 )
        )
),
CALCULATE(
     RANKX (
    ALL ( 'Responses received' ),
    RANKX ( ALL ( 'Responses received' ),[Client Score],, DESC )
        + DIVIDE (
            RANKX ( ALL ( 'Responses received' ),[Total Revenue] ,, DESC ),
            ( COUNTROWS ( ALL ( 'Responses received' ) ) + 1 )
        )
),'Fiscal Years'[FY]=MaxYear))


But its not affecting the results.

 

8 REPLIES 8
Anonymous
Not applicable

Hi @Anonymous ,

 

This could have to do with the cross filter direction of the relationship with your 'Fiscal Years' table.

 

Jan 

Anonymous
Not applicable

Hey @Anonymous I have many measures with the same dax to show the measure for latest fiscal year and they are working fine.

Anonymous
Not applicable

@Anonymous 

 

I think your max year changing to same value.

 

Can you update variable and check

var max_year=calculate(max(table[year_column]),filter(all(table[year_column]))

 

Thanks & regards,
Pravin Wattamwar
www.linkedin.com/in/pravin-p-wattamwar

If I resolve your problem Mark it as a solution and give kudos.

 

 

 

Anonymous
Not applicable

@AnonymousI guess there is something wrong with your measure.

Anonymous
Not applicable

use your measure only just update your first line which var max_year

 

Ranking_Clients = 
Var MaxYear=Calculate(MAX('Fiscal Years'[FY],filter(all('fiscal Years')))
Return
IF(ISFILTERED('Fiscal Years'[FY]),
 RANKX (
    ALL ( 'Responses received' ),
    RANKX ( ALL ( 'Responses received' ),[Client Score],, DESC )
        + DIVIDE (
            RANKX ( ALL ( 'Responses received' ),[Total Revenue] ,, DESC ),
            ( COUNTROWS ( ALL ( 'Responses received' ) ) + 1 )
        )
),
CALCULATE(
     RANKX (
    ALL ( 'Responses received' ),
    RANKX ( ALL ( 'Responses received' ),[Client Score],, DESC )
        + DIVIDE (
            RANKX ( ALL ( 'Responses received' ),[Total Revenue] ,, DESC ),
            ( COUNTROWS ( ALL ( 'Responses received' ) ) + 1 )
        )
),'Fiscal Years'[FY]=MaxYear))
Anonymous
Not applicable

@Anonymous Var MaxYear=Calculate(MAX('Fiscal Years'[FY],filter(all('fiscal Years')))
Your Filter function is missing an argument, even if i use this:

Var MaxYear=calculate(max('Fiscal Years'[FY]),FILTER('Fiscal Years',all('Fiscal Years'[FY])))
Its not working.And i am using my measure with your max year variable
Anonymous
Not applicable

 
Sorry @Anonymous 
update it Like this CALCULATE(MAX(Table[Skill]),(ALL(Table[Skill])))
Anonymous
Not applicable

@AnonymousIm sorry but its not working

Helpful resources

Announcements
Fabric Data Days is here Carousel

Fabric Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.