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!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hello! Need help on the following scenario. So we are already set with our measure and working as expected Here it is:
Solution=
VAR countSolution=
CALCULATE ( COUNTA ( 'RiskColumn'[Solution] ) )
VAR countLagging =
CALCULATE (
COUNTA ( 'RiskColumn'[Solution] ),
FILTER (
'RiskColumn',
'RiskColumn'[Category] = "Lagging"
)
)
VAR countNotDelay =
CALCULATE (
COUNTA ( 'RiskColumn'[Solution] ),
FILTER (
'RiskColumn',
' RiskColumn'[Category] = "Not Delay"
)
)
RETURN
SWITCH (
TRUE (),
countDelay = countSolution
&& countLagging <= 0
|| countLagging <= 0
&& countNotDelay > 0, "Excellent",
( countLagging = 1
|| countLagging = 2 ), "Satisfactory",
( countLagging >= 3 ), "For Improvement"
)
Unfortunately, we need to have this converted to M code, so we just want to instead a column in the backend where it will contain the Level Column containing "Excellent", "Satisfactory", and "For Improvement"
I have this sample table similar to what we have in the backend but we are stuck at how the m code should look like so that each Solution is only mapped to only one level (excellent, satisfactory, etc). Or may be there are other ways to do this?
| Solution | Risk Category | Count | Quality Category |
| X | Delay | 2 | Lagging |
| X | Not delay | 3 | On time |
| Y | Delay | 1 | Lagging |
| Y | Not delay | 1 | On time |
| Z | Delay | 0 | On time |
| Z | Not delay | 3 | On time
|
so that each Solution is only mapped to only one level
You need to describe the aggregation rules for your scenario where you have multiple rows per Solution,
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 16 | |
| 16 | |
| 12 | |
| 11 | |
| 9 |