Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hello,
I am putting together some dynamic text and need a Dax that will return the % that the top supplier makes up of total.
In the example below, I would want DAX to return 50%.
Supplier | Amount |
A | 20 |
B | 15 |
C | 15 |
D | 25 |
D | 25 |
Total | 100 |
I do have following measure in my report if that helps:
Actual Amount = ROUND(SUM('Transactions'[Amount]),2)
Solved! Go to Solution.
You can create a measure with below code
Measure =
var total_sum = CALCULATE(SUM(Supplier_data[Amount]),ALL(Supplier_data))
var getting_max = MAXX(SUMMARIZE(ALL(Supplier_data),Supplier_data[Supplier],Supplier_data[Amount],"Max_Value",SUM(Supplier_data[Amount])/total_sum),[Max_Value])
return FORMAT(getting_max,"0%")
Best Regards,
Samarth
If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
Appreciate your Kudos!!
Connect on Linkedin
This was helpful. I had to tweak the formula a little. Here was the final formula:
% of highest Supplier =
var total_supplier = CALCULATE([Actual Amount],'Find Suppliers - Addl Info'[Supplier]<>BLANK())
var getting_max = MAXX(SUMMARIZE(FILTER('Fact Table','Fact Table'[Supplier ID]<>BLANK()),'Find Suppliers - Addl Info'[Supplier],"Max_Value",SUM('Fact Table'[GL Amount])/total_supplier),[Max_Value])
return
FORMAT(getting_max,"0.0%")
Hi @zzakir ,
If i am taking it correctly you just need a highest % of total. You can take a Max of "% of total column" column.
Measure = MAX(Supplier_data[% of Total])
Please let me know if this is the output you looking.
Best Regards,
Samarth
If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
Appreciate your Kudos!!
Connect on Linkedin
@Samarth_18 I have editted my original question to be clearer.
I do not have % column.
You can create a measure with below code
Measure =
var total_sum = CALCULATE(SUM(Supplier_data[Amount]),ALL(Supplier_data))
var getting_max = MAXX(SUMMARIZE(ALL(Supplier_data),Supplier_data[Supplier],Supplier_data[Amount],"Max_Value",SUM(Supplier_data[Amount])/total_sum),[Max_Value])
return FORMAT(getting_max,"0%")
Best Regards,
Samarth
If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
Appreciate your Kudos!!
Connect on Linkedin
This was helpful. I had to tweak the formula a little. Here was the final formula:
% of highest Supplier =
var total_supplier = CALCULATE([Actual Amount],'Find Suppliers - Addl Info'[Supplier]<>BLANK())
var getting_max = MAXX(SUMMARIZE(FILTER('Fact Table','Fact Table'[Supplier ID]<>BLANK()),'Find Suppliers - Addl Info'[Supplier],"Max_Value",SUM('Fact Table'[GL Amount])/total_supplier),[Max_Value])
return
FORMAT(getting_max,"0.0%")
Hi zzakir,
Is this the result you're looking for? It takes the % value of the top 1 supplier based on the [% of total] column.
TESTMEASURE = CALCULATE(SELECTEDVALUE(Test[% of Total]), TOPN(1,ALL(Test), Test[% of Total],DESC))
Best regards,
Tim
Proud to be a Super User!
Hello @timg,
This is close to what I want. Perhaps I should've asked my original question differently:
I have a transaction table below.
Supplier | Amount |
A | 20 |
B | 15 |
C | 15 |
D | 25 |
D | 25 |
Total | 100 |
I do have following measure in my report if that helps:
Actual Amount = ROUND(SUM('Transactions'[Amount]),2)
User | Count |
---|---|
21 | |
14 | |
11 | |
7 | |
5 |
User | Count |
---|---|
23 | |
23 | |
20 | |
15 | |
10 |