The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hi everyone,
I'm working on a Power BI report that includes around 12 dashboard pages.
My business requirement is as follows:
- If the data from two sources (SAP and Eleader, both imported from SharePoint) **are not aligned in terms of month and year**,
- Then the user should **only see a single red warning page**,
- And must **not be able to access** any of the dashboard pages — not even accidentally (e.g., via keyboard shortcuts or invisible buttons).
The solution should be:
- **100% automatic**, with no user interaction required
- Deployed in **a single PBIX file**,
- **Without any buttons** or elements that could be accidentally clicked,
- And with **fully secure and clean page-level control**: no other pages should be visible or accessible when data is inconsistent.
I understand the limitations:
- Power BI doesn't support hiding or navigating pages dynamically using DAX,
- Redirecting to a specific page based on a condition is not natively possible.
So my question is:
-What is the best practice or workaround to simulate this kind of secure page-blocking logic in Power BI?**
-Is there any clean and automatic way to fully block access to all pages when a validation check fails?
Thanks in advance for your guidance .
Hi @Yakout ,
Could you confirm if the information provided by @Greg_Deckler has resolved the issue? If you have any further questions, please let us know.
Thank you.
@Yakout Here's a video on the method:
Hi @Yakout ,
Thank you for reaching out to the Microsoft fabric community forum.
Could you please confirm if the issue has been resolved. I wanted to check if you had the opportunity to review the information provided by @Greg_Deckler . Please feel free to contact us if you have any further questions.
Thank you.
@Greg_Deckler Thanks for your reply!
Let me clarify:
By **"validation check fails"**, I mean that I have a DAX measure that checks whether the month and year of sales data from two sources (SAP and Eleader) are the same.
The measure looks like this:
```DAX
DateAlignement =
VAR MoisEleader = LOOKUPVALUE('DateVente Info'[MoisVente], 'DateVente Info'[SourceVente], "eleader")
VAR AnneeEleader = LOOKUPVALUE('DateVente Info'[AnneeVente], 'DateVente Info'[SourceVente], "eleader")
VAR MoisSAP = LOOKUPVALUE('DateVente Info'[MoisVente], 'DateVente Info'[SourceVente], "SAP")
VAR AnneeSAP = LOOKUPVALUE('DateVente Info'[AnneeVente], 'DateVente Info'[SourceVente], "SAP")
RETURN
IF(MoisEleader = MoisSAP && AnneeEleader = AnneeSAP, 1, 0)
This measure returns 1 when dates are aligned and 0 otherwise.
-> Then I use another measure to generate a warning message when the dates are not aligned:
AlertMessage =
IF(
[DateAlignement] = 1,
BLANK(),
"⚠️ SAP and Eleader dates are not aligned!"
)
he data sources (simplified) look like this:
| SourceVente | MoisVente | AnneeVente |
| ----------- | --------- | ---------- |
| SAP | 6 | 2025 |
| eleader | 7 | 2025 |
My goal is:
If dates are aligned → show dashboards (I have 12 pages)
If not → automatically show only a warning message across the whole report
@Yakout The only way that I can think to achieve this would be the following.
1. Hide all pages except the landing page
2. Create a table (Enter data) that holds the Power BI Service URL's for all of the individual pages when published
3. On the landing page, create a warning visual
4. Overlay the warning visual with a table visual that displays the Page Names and URL's (as link) along with your validation measure.
5. Use the Filter pane to filter the table visual based upon your validation measure.
6. Control the transparency of the table visual background and text using the validation measure (conditional formatting)
What this achieves is that when the measure is valid (1), then the background and text of the table visual is not transparent and this displays links to the pages of the dashboard. When it is 0, everything in the table is transparent, but the table also displays no rows at all because they are filtered out. Thus, the warning visual is displayed.
@Yakout What do you mean by "validation check fails". As in, how is the validation check being implemented? Is it a measure or ?? What is meant by "are not aligned in terms of month and year", can you provide mock data?