Forum Discussion
Filter All Pages from Landing Page Only If Selected
- 1 year ago
Here's a comprehensive solution to filter all report pages based on a selection made on the landing page, with the behavior you described:
Best Practice Solution
1. Create a Parameter Table
First, create a disconnected parameter table for your selection:
Filter_Selection = DATATABLE( "Option", STRING, { {"Manufacturing"}, {"Marketing BU"}, {"(No Filter)"} } )2. Add Selection Control
On your landing page:
Add a slicer visual
Bind it to the Filter_Selection[Option] field
Set default selection to "(No Filter)"
3. Create Filter Measures
Create these measures to use as filters:
Manufacturing Filter = IF( SELECTEDVALUE(Filter_Selection[Option]) = "Manufacturing", "Manufacturing", UNICHAR(0) ) Marketing Filter = IF( SELECTEDVALUE(Filter_Selection[Option]) = "Marketing BU", "Marketing", UNICHAR(0) )4. Implement Page Navigation
Add buttons with these actions:
Manufacturing Button:
Action: Bookmark
Data: Change Filter_Selection slicer to "Manufacturing"
Navigation: Go to target page
Marketing BU Button:
Action: Bookmark
Data: Change Filter_Selection slicer to "Marketing BU"
Navigation: Go to target page
5. Set Up Page-Level Filters
On each content page (not landing page):
Add two filters in Edit Interactions mode:
Visual-level filter on Flag field:
Flag = [Manufacturing Filter] || ISFILTERED(Flag) = FALSE
Visual-level filter on GLFlag field:
GLFlag = [Marketing Filter] || ISFILTERED(GLFlag) = FALSE
Set the filter logic to:
Only apply when the parameter is selected
Show all data when no selection is made
6. Bookmark Configuration
Create bookmarks for each scenario:
"Manufacturing View" - Sets selection and applies filters
"Marketing View" - Sets selection and applies filters
"Clear Filters" - Resets to "(No Filter)"
Alternative Approach Using Buttons & Bookmarks
If you prefer button-based navigation:
Create three buttons on landing page:
Manufacturing
Marketing BU
View All (no filter)
For each button:
Set action to "Bookmark"
Configure bookmark to:
Set slicer selection
Apply relevant filters
Navigate to target page
If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it! Thank you.
- 1 year ago
Hi Prabavathy_0108 ,
Thank you for reaching out to the Microsoft Community Forum.
Please follow below steps.
1. Create a Disconnected Table:
SelectionTable = DATATABLE(
"Selection", STRING,
{
{"Manufacturing"},
{"Marketing BU"}
}
)2. Create a “Selection Bridge” Table:
This acts as a persistent memory. Use a simple one-row table with a measure to populate it based on the user's interaction.
3. Create a Measure to Act as a Flag
This measure will filtering in the data model based on what the user selects only when they click a button.
SelectedMode =
VAR sel = SELECTEDVALUE(SelectionTable[Selection])
RETURN
SWITCH(TRUE(),
sel = "Manufacturing", "Manufacturing",
sel = "Marketing BU", "Marketing",
BLANK()
)4. Create a Page Filter Measure (used in visual/page filters):
ApplyPageFilter =
VAR flag = [SelectedMode]
RETURN
SWITCH(TRUE(),
flag = "Manufacturing" && MAX('YourData'[Flag]) = "Manufacturing", 1,
flag = "Marketing" && MAX('YourData'[GLFlag]) = "Marketing", 1,
ISBLANK(flag), 1, -- Don't filter unless flag set
0
)Note: Apply this measure as a visual/page filter where ApplyPageFilter = 1.
5. Landing Page Buttons: Use Bookmarks and SET the Selection
Use a “Selection” slicer hidden under the button and set its value via a bookmark.
Create 2 bookmarks:
a. Manufacturing Bookmark:
Select "Manufacturing" in slicer. Update bookmark (data + page + visuals). Set action on Manufacturing button to "Apply bookmark". Navigate to Manufacturing Page.
b. Marketing BU Bookmark:
Please follow the Same steps as above bookmark, selecting "Marketing BU". Navigate to Marketing Page.
Note: This ensures filter gets set only when user clicks a button, and the page transition happens in one click.
6. Other Pages:
Add ApplyPageFilter = 1 to Filter Pane. Each page that should be filtered only when a user clicked a button should include:
ApplyPageFilter in visual-level filters or page filters, set to = 1.Note: This allows, Proper filtering only after selection. No filtering at all if user navigates manually.
If my response has resolved your query, please mark it as the "Accepted Solution" to assist others. Additionally, a "Kudos" would be appreciated if you found my response helpful.
Thank you
Hi Prabavathy_0108 ,
So what you wanna do is totally possible in Power BI, and it’s a pretty common requirement for interactive reports. You can manage this behavior with a combination of a parameter table (for your landing page selection) and some DAX. Basically, you create a disconnected table for your buttons (Manufacturing, Marketing BU), and then use a measure to “read” which one is selected and filter all pages based on that.
A few tips:
- Make a table (let’s call it ‘Selection’) with the two options. Use buttons on the landing page to select them (Bookmark or Selection Pane helps).
- Create a measure like SelectedType = SELECTEDVALUE(Selection[Type]) and use this in your page-level filters or visuals, something like GLFlag = SelectedType.
- For the “no filter if nothing selected” case, you can add logic in your measure to show all data if BLANK().
- If users go to other pages without clicking, just make sure your default state is no filter (just don’t apply the measure as a filter until a selection is made).
- For navigation, you can use the button’s action property set to “Page Navigation” so clicking applies the filter and moves the user.
Not saying this is the only way, but it’s a reliable approach and keeps your report flexible for future needs.
If my response resolved your query, kindly mark it as the Accepted Solution to assist others. Additionally, I would be grateful for a 'Kudos' if you found my response helpful.
translation and formatting supported by AI
- Prabavathy_01081 year agoFrequent Visitor
Thanks burakkaragoz this approach definitely helps for filtering logic — I’ve already implemented something similar using a disconnected table and a DAX measure to control the filters across pages.
However, the issue I’m facing is with the navigation part:
If I click a button (e.g., "Manufacturing") on the landing page, the selection is made and the filter applies
But navigation doesn’t happen automatically
I need a way where:
Clicking the button applies the selection and
Navigates to the corresponding page (e.g., "Manufacturing Page")
Any idea how to combine the filter selection and navigation in one click without breaking the logic?
Appreciate your help!