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

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
bparker_ntst
Regular Visitor

Rank System

So, We have a problem where I came up with an idea to create a dynamic ranking dashboard. I did this by adding an unconnected rank table along with two measures. One measure will rank one text based column by a numerical column. and the other measure will calculate the total sum of the numerical column by each rank. This worked with rudimentary tables. But, when we try to implement it into a dashboard with complex filters/sliders and other ranking systems in place, it doesn't work at all. Was curious if anyone knows of a way to make this ranking system take precedence over any other filters or anything else going on with the same data. 

8 REPLIES 8
bparker_ntst
Regular Visitor

I've tried many of the methods listed but none seem to work. I'm tabling this project right now and coming back to it when I have more of an idea of what exactly is causing the issue. 

Thanks for the update @bparker_ntst,
Whenever you're ready to revisit the project, feel free to share a simplified sample or any new findings you come across. We'd be glad to take another look and help identify what might be contributing to the issue.

Appreciate you keeping us posted, and we’ll be here to support you when you’re ready.

v-veshwara-msft
Community Support
Community Support

Hi @bparker_ntst ,

Following up to see if your query has been resolved. If any of the responses helped, please consider marking the relevant reply as the 'Accepted Solution' to assist others with similar questions.

If you're still facing issues, please share more details or a sample dataset so we can help you better. Feel free to reach out.

Thank you.

v-veshwara-msft
Community Support
Community Support

Hi @bparker_ntst ,
Thanks for reaching out to Microsoft Fabric Community.
When using ranking logic in a dynamic dashboard with multiple filters and sliders, ensuring the rank calculation takes precedence can be tricky.

One function that could be useful in your scenario is ALLSELECTED. Unlike ALL, which removes all filters, ALLSELECTED respects selections made in slicers and recalculates rankings based on the filtered dataset. This ensures that ranking is applied only to visible records while maintaining the context of slicer selections.

 

Other functions like ALLEXCEPT, REMOVEFILTERS, and KEEPFILTERS also help control filter behavior. ALLEXCEPT removes filters from all columns except the specified ones, which can be useful for keeping certain filters intact while allowing rankings to adjust dynamically.

REMOVEFILTERS clears filters from selected columns or tables, helping reset the context when needed. KEEPFILTERS ensures previously applied filters remain effective when combined with other calculations, preserving intended logic in complex dashboards.

 

If you can share a sample dataset or more details about how your ranking measure is structured, we can provide better guidance.

Let us know how you're implementing the ranking and what behavior you're expecting so we can help troubleshoot further.

 

Hope this helps. Please reach out for further assistance.
Here are some related threads, you may find useful.
Solved: Re: Rankx Not working as expected when data is fil... - Microsoft Fabric Community

Re: Dynamic rankx() with filters - Microsoft Fabric Community

Solved: Dynamic Ranking - Measure - Microsoft Fabric Community

 

Please consider marking the helpful reply as Accepted Solution and giving kudos to assist others with similar issues.

Thank you.

 

Hi @bparker_ntst ,

Just checking in to see if your query has been resolved and whether any of the responses provided were helpful.

If you're still facing issues or need further assistance, feel free to share more details or a sample dataset so we can help you better.

Thank you.

Nasif_Azam
Solution Specialist
Solution Specialist

Hey @bparker_ntst ,

Your approach with an unconnected rank table and custom measures is a clever and often effective method for building dynamic rankings in Power BI. However, the problem you're encountering where complex filters and slicers interfere with the expected behavior is common. Here's a structured breakdown of the issue and how to resolve it. When you use unconnected tables and DAX measures, the ranking logic operates based on the evaluation context, which is influenced by slicers, filters, and visual-level filters. If your ranking measure isn't designed to ignore or override certain filters, then those filters limit the rows being ranked, causing unexpected results.

 

Solutions:

1. Use ALL() to Control Context Explicitly

Your rank measure should use ALL() or REMOVEFILTERS() to override slicers/filters. Example:

RankMeasure = 
RANKX(
    ALL('MainTable'[TextColumn]), 
    CALCULATE(SUM('MainTable'[ValueColumn]))
)

This ensures ranking is done over all rows, ignoring current filters.

If you need to preserve certain filters (e.g., region, year), you can use ALLSELECTED() or REMOVEFILTERS() selectively:

RankMeasure = 
RANKX(
    REMOVEFILTERS('MainTable'[TextColumn]), 
    CALCULATE(SUM('MainTable'[ValueColumn]))
)

 

2. Total Value by Rank Measure

If your rank table is disconnected, you can still link it using DAX logic. For example:

TotalByRank = 
CALCULATE(
    SUM('MainTable'[ValueColumn]),
    FILTER(
        ALL('MainTable'),
        [RankMeasure] = MAX('RankTable'[Rank])
    )
)

This finds all rows in the main table that match the current rank and sums their values.

 

3. Use ISINSCOPE() for Complex Visual Behavior

If visuals have hierarchy or complex drill-downs, use ISINSCOPE() to modify behavior:

RankMeasure = 
IF(
    ISINSCOPE('MainTable'[TextColumn]),
    RANKX(
        ALL('MainTable'[TextColumn]),
        CALCULATE(SUM('MainTable'[ValueColumn]))
    )
)

 

4. When Filters Must Be Respected (Partial Override)

Sometimes you want to respect some filters but still rank globally. Try ALLSELECTED():

RankMeasure = 
RANKX(
    ALLSELECTED('MainTable'[TextColumn]), 
    CALCULATE(SUM('MainTable'[ValueColumn]))
)

This allows slicers like Year, Region to be respected, but ranks over what's visible in those filters.

 

If you found this solution helpful, please consider accepting it and giving it a kudos (Like) it’s greatly appreciated and helps others find the solution more easily.


Best Regards,
Nasif Azam

Poojara_D12
Super User
Super User

Hi @bparker_ntst 
The issue you're facing with your dynamic ranking dashboard stems from how Power BI handles filter context, especially when your report includes multiple slicers, filters, and other ranking systems. While your approach of using an unconnected rank table and DAX measures to calculate rank and corresponding values works well in a simple setup, it can break down in complex dashboards due to filter interference. By default, slicers and filters on the report page influence the data being evaluated by your measures, which can cause your ranks to behave unpredictably or return incorrect results. To make your ranking system take precedence and function reliably regardless of other filters, you need to explicitly control the evaluation context in your DAX measures. This is typically done by using functions like `ALL()` or `REMOVEFILTERS()` to remove specific filters that could interfere with ranking, ensuring that ranks are calculated across the full dataset or a consistent subset. Additionally, using `FILTER()` inside your value measure with a comparison to the selected rank ensures that only data matching the selected rank is returned. It's also important to keep your rank table disconnected and avoid any unintended relationships. In short, by isolating the ranking logic from the report’s broader filter context using proper DAX techniques, you can ensure your dynamic ranking system remains stable and effective even in complex dashboards.

Did I answer your question? Mark my post as a solution, this will help others!
If my response(s) assisted you in any way, don't forget to drop me a "Kudos"

Kind Regards,
Poojara - Proud to be a Super User
Data Analyst | MSBI Developer | Power BI Consultant
Consider Subscribing my YouTube for Beginners/Advance Concepts: https://youtube.com/@biconcepts?si=04iw9SYI2HN80HKS
maruthisp
Solution Specialist
Solution Specialist

Hi bparker_ntst,


I tried to implement your solution the below attached pbix file. Please check and let me know.

 

maruthisp_0-1749172126866.png

Rank System.pbix

Please let me know if you have further questions.

If this reply helped solve your problem, please consider clicking "Accept as Solution" so others can benefit too. And if you found it useful, a quick "Kudos" is always appreciated, thanks! 

 

Best Regards, 

Maruthi 

LinkedIn - http://www.linkedin.com/in/maruthi-siva-prasad/ 

X            -  Maruthi Siva Prasad - (@MaruthiSP) / X

Helpful resources

Announcements
June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.