Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowJuly 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! 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,
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
Join Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.