This is best Fabric, Power BI, SQL and AI community event. How do we know? The last event sold out! Save €200 with code FABCMTY200.
Register nowA new Data Days event is coming soon! This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. Don't miss out.
I have a table that holds uniqueasset and asset age and I am trying to create a dynamic filter in order to show the Top 15% of the oldest assets. I created a uniquerank column since there are many duplicates of asset age.
Measures created:
UniqueRank =
RANKX(
Data,
Data[asset age] * 1000000 + Data[Index],
,
DESC,
DENSE
)
TotalAssets = COUNTROWS(ALL(Data))
Top15PercentCount = CEILING([TotalAssets] * 0.15, 1)
Top15PercentThresholdRank =
CALCULATE(
MAXX(
TOPN([Top15PercentCount], ALL(data), data[UniqueRank], DESC),
data[UniqueRank]
)
)
I then created a column to use as a filter:
IsTop15Percent =
IF(
MAX(data[UniqueRank]) <= [Top15PercentThresholdRank],
1,
0
)
However, when I use as a filter it is placing all assets/rows into the Top 15% when I believe it should be flagging 1,876 of them.
What am I doing incorrectly? pbix file here: Top 15 Percent Oldest Assets
TIA!
Solved! Go to Solution.
Hi,
PBI file attached.
Hope this helps.
Hi,
Please check the below picture and the attached pbix file.
Hi,
Please check the below picture and the attached pbix file.
@Ashish_Mathur Your method also appears to work, however I did not try it in my actual data model, but your example is correct. Thank you!
You are welcome.
Check out the May 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
| User | Count |
|---|---|
| 29 | |
| 25 | |
| 25 | |
| 21 | |
| 14 |
| User | Count |
|---|---|
| 61 | |
| 49 | |
| 25 | |
| 20 | |
| 20 |