Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!To celebrate FabCon Vienna, we are offering 50% off select exams. Ends October 3rd. Request your discount now.
Dear all,
I have to create a RankX measure to do ranking about dept of customers. But when i wrote:
RANKX = RANKX(ALL('AR by KH'[Customer]),SUM('AR by KH'[Dept]), , DESC)
It's not working, each row gets a result is 1
But when I change my code to:
RANKX = RANKX(ALL('AR by KH'[Customer]), CALCULATE(SUM('AR by KH'[Dept])), , DESC)
It's working for this sentence
So my question is: CALCULATE(SUM('AR by KH'[Dept])) and SUM('AR by KH'[Dept]) what is different? Because as I knew, when using Calculate without filter, the result will be the same with SUM()
Solved! Go to Solution.
Hi,
What CALCULATE does above is transition the row context to the filter context inside the measure.
In above, if the measure,
SUM Measure = SUM('AR by KH'[Dept])
is written first,
and then when you create a RANKX measure like below,
RANKX = RANKX(ALL('AR by KH'[Customer]), [SUM Measure], , DESC)
it will show the expected result.
I hope this helps.
Hi,
What CALCULATE does above is transition the row context to the filter context inside the measure.
In above, if the measure,
SUM Measure = SUM('AR by KH'[Dept])
is written first,
and then when you create a RANKX measure like below,
RANKX = RANKX(ALL('AR by KH'[Customer]), [SUM Measure], , DESC)
it will show the expected result.
I hope this helps.
User | Count |
---|---|
15 | |
11 | |
6 | |
6 | |
5 |
User | Count |
---|---|
29 | |
17 | |
11 | |
7 | |
5 |