Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredGet Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more
In my report i used Field Parameters to create a Matrics Table, but im facing Sorting issues. PBI is not remembering the sorting order i applied when i change the filed parameter value. so to overcome this later i created Calculation Groups with the same Fields as field parameter and applied this calculation items in the Matrics and removed the field parameters.
My report have 2 Users - Authorized and Unauthorized.
based on the user logged in i need to enable the Page Navigation button navigates to different pages dynamically.
I achieved this Page Level Security by this approach >>
i created page level security in PBI report to show specific pages based on user loged in.
1. Create an User Page table with 2 columns like Email and Pages (Pages column have the list of pages this user needs to access)
2. In Manage Roles section, create a Role using USERPRINCIPALNAME() over the Email column
3. In the Main page of report, add Slicer with Pages column. You can add this Slicer as a Menu
4. Add a Page Navigation Button with Condional Destination. In the Destination section click fx and select the Pages column as a Field Value (Summarization - First)
5. Hide All the Pages except the Main page as a Landing page. Now based on the selection made in the Slicer, button will navigate to that page.
this worked well and good, but only until im creating calculations groups.
i created calculation groups for dynamic field values changing and to overcome the sorting issue faced in Field parameter., but after i creating calculation groups the dynamic page navigation button stopped working, in the destination section, the pages column was disabled and i couldnt select that pages column again itself like i selected before
UserPages =
DATATABLE(
"Email",STRING,
"Pages",STRING,
{
{"pkumar@gmail.com","Summary 1"}, {"pkumar@gmail.com","Summary 2"}, {"pkumar@gmail.com","Data"}
{"kumar@gmail.com","Summary 3"}, {"kumar@gmail.com","Summary 4"}, {"kumar@gmail.com","Data 2"}} )
anyone have any solution for combining this page level security and calculation groups ?
or any other ideas for my case ?
Solved! Go to Solution.
Hi @PremK It might be because calculation groups interfere with the Pages column used for conditional navigation, as they override field references. So, for this, you can modify the UserPages table to include a unique PageID and use it exclusively for navigation logic. Ensure USERPRINCIPALNAME() filters the table based on the user's email, and keep calculation groups independent of the slicer and button setup. Use PageID for navigation while displaying PageName in the slicer to maintain dynamic functionality.
Hi @PremK ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya
Hi @PremK ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya
Hi @PremK ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya
Hi @PremK It might be because calculation groups interfere with the Pages column used for conditional navigation, as they override field references. So, for this, you can modify the UserPages table to include a unique PageID and use it exclusively for navigation logic. Ensure USERPRINCIPALNAME() filters the table based on the user's email, and keep calculation groups independent of the slicer and button setup. Use PageID for navigation while displaying PageName in the slicer to maintain dynamic functionality.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.