Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Hi Community,
In Qlik Sense, I have a filter called “QCI / Reportees” where:
Based on the user selection:
Power BI matrix requires a fixed row dimension, but here the grouping dimension needs to change dynamically based on slicer selection (QCI vs Reportees).
What is the recommended Power BI approach to:
Any guidance, patterns, or best practices would be greatly appreciated.
Thanks in advance!
Solved! Go to Solution.
The standard Power BI approach for this is Field Parameters, which were designed exactly for this kind of dynamic dimension switching.
Setup:
Go to Modeling → New parameter → Fields
Add both your QCI column and your Reportees column to the parameter
This creates a disconnected table with a slicer — selecting "QCI" or "Reportees" changes which field is active
Use in the matrix:
Put the Field Parameter in the Rows well of your matrix instead of a fixed column. The matrix rows will then switch between QCI and Reportees based on what the user selects in the slicer.
For the revenue measure, you may need a measure that's aware of which grouping is active:
daxRevenue by Selection =
IF(
SELECTEDVALUE(GroupingParameter[GroupingParameter Order]) = 0,
[Revenue by QCI],
[Revenue by Reportees]
)
The main limitation vs. Qlik: since QCI and Reportees come from different tables, make sure both have a path to your revenue fact table through the model relationships. If they do, the field parameter approach should give you the same single-slicer dynamic grouping behavior you had in Qlik
Hi @Harini07,
Checking in to see if your issue has been resolved. let us know if you still need any assistance.
Thank you.
Hi @Harini07,
Have you had a chance to review the solution we shared earlier? If the issue persists, feel free to reply so we can help further.
Thank you.
Hi @Harini07,
Thank you @Juan-Power-bi, @cengizhanarslan, for your insights.
In Power BI Desktop, use Field Parameters to include both QCI and Reportees in a single parameter. Add this parameter to the Matrix Rows and use its slicer to switch between them, allowing the grouping to change dynamically. Ensure both fields are properly related to the revenue table for correct filtering.
Use report readers to change visuals - Power BI | Microsoft Learn
Implement Data Translation Using Field Parameters - Power BI | Microsoft Learn
Thank you.
1) Create a Field Parameter
Modeling tab → New Parameter → Fields → add both columns: the QCI column from the QCI table and the Reportee column from the Reportees table. Give the parameter a name like "Grouping Dimension". Power BI generates a parameter table automatically with a DAX definition like:
Grouping Dimension = {
("QCI", NAMEOF('QCI'[QCI]), 0),
("Reportees", NAMEOF('Reportees'[Reportee]), 1)
}
2) Enable the slicer
Power BI automatically adds a slicer for the parameter. Place it on the canvas, this becomes your QCI / Reportees toggle. Set it to single select.
3) Configure the matrix
Drag the Grouping Dimension parameter field into the Rows well of the matrix. When the user selects QCI from the slicer, the matrix groups by QCI. When they select Reportees, it groups by Reportee.
The standard Power BI approach for this is Field Parameters, which were designed exactly for this kind of dynamic dimension switching.
Setup:
Go to Modeling → New parameter → Fields
Add both your QCI column and your Reportees column to the parameter
This creates a disconnected table with a slicer — selecting "QCI" or "Reportees" changes which field is active
Use in the matrix:
Put the Field Parameter in the Rows well of your matrix instead of a fixed column. The matrix rows will then switch between QCI and Reportees based on what the user selects in the slicer.
For the revenue measure, you may need a measure that's aware of which grouping is active:
daxRevenue by Selection =
IF(
SELECTEDVALUE(GroupingParameter[GroupingParameter Order]) = 0,
[Revenue by QCI],
[Revenue by Reportees]
)
The main limitation vs. Qlik: since QCI and Reportees come from different tables, make sure both have a path to your revenue fact table through the model relationships. If they do, the field parameter approach should give you the same single-slicer dynamic grouping behavior you had in Qlik
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.
| User | Count |
|---|---|
| 48 | |
| 45 | |
| 41 | |
| 19 | |
| 18 |
| User | Count |
|---|---|
| 68 | |
| 67 | |
| 33 | |
| 31 | |
| 29 |