Forum Discussion
Hide tables when using personalize feature
- 11 months ago
Hi POSPOS,
Thank you for the follow up.Based on my understanding, the Personalize visuals feature exposes all fields from the dataset by default. Without additional configuration, users will see both the Query1 and Query2 tables even if they access only one page.
We can achieve the desired behaviour without splitting the report by configuring Perspectives in the model and assigning them to each report page. When a perspective is assigned to a page, Personalize visuals displays only the fields included in that perspective for that page.
- In Power BI Desktop with TMDL view enabled, create a perspective for Query1 and another for Query2.
- On each report page, open the Format pane and assign the appropriate perspective.
- Publish the report and verify. Users on Page1 will see only Query1 fields when personalizing, and users on Page2 will see only Query2 fields.
- If you need to hide objects completely rather than only simplify Personalize visuals, configure Object-Level Security (OLS) via TMDL. This approach allows you to maintain a single report and reduces maintenance overhead. If TMDL is blocked in your tenant, please consult your administrator.
Please refer to the links below for further information:
Personalize visuals in a report - Power BI | Microsoft Learn
Let users personalize visuals in a report - Power BI | Microsoft Learn
Tabular Model Definition Language (TMDL) | Microsoft Learn
Use Tabular Model Definition Language (TMDL) view in Power BI Desktop - Power BI | Microsoft Learn
Object-Level Security (OLS) with Power BI - Microsoft Fabric | Microsoft LearnWe hope the information provided helps to resolve the issue. Should you have any further queries, please feel free to contact the Microsoft Fabric community.
Thank you.
- 10 months ago
Hi POSPOS
You can achieve same result using TMDL scripting within Power BI. The sample from the screenshots above generates the following script:
However, I would most definitely recommend Tabular Editor as I would rather use a GUI rather than potentially breaking your model via scripting.
I think you should consider splitting this report in two, include them in an app.
From your existing semantic model,
1.create two reports: Report 1 and Report 2 pointing to the same semantic model.
2. In your semantic model create two perspectives, one for report 1 and second one for report 2. Configure these perspectives in each report.
3. publish the two reports to your workspace and then include them into your app.
4. With the app navigation users can navigate to appropriate report. (you can also restrict it to specific users by using app ausidence groups .
this way, when they are in report 1 they will see query 1 fields when they click on personalize (as you have selected appropriate perspective report 1)
You can also do this power bi desktop thanks to TMDL view,
something like
createOrReplace perspective 'My Sales Perspective'
perspectiveTable 'Sales'
includeAll: true
perspectiveTable 'Customers'
perspectiveColumn 'Customer Name'
perspectiveColumn 'Region'
perspectiveTable 'Products'
perspectiveMeasure 'Total Sales'
perspectiveHierarchy 'Product Category'
Connect on LinkedIn
|