Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Join us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.

Reply
maziiw
Frequent Visitor

Field parameter changing field list based on which page it is on

I have a field parameter - pretty straight forward like below.

This is on page A.

On page B, I'd like to use the same parameter, except for line "Top Countries" - 

I want this to be replaced by  ("Top 10 Countries SEARCH", NAMEOF('Top X'[SEARCH_TOP10_COUNTRY]), 1),

 

So final would look like this: If Page A, then show Version A with top countries, if page B then show verion B with Search top countries

 

Is there a way to do that? Or do I need to create a new parameter for each page?

So 

param_gross = {
    ("Overall", "None", 0),
    ("Top 10 Countries", NAMEOF('Top X'[GROSSB_TOP10_COUNTRY]), 1),
    ("Company Region", NAMEOF('dim_company'[COMPANY_REGION]), 2),
    ("Company Country", NAMEOF('dim_company'[COMPANY_COUNTRY]), 3),
    ("Company Origin", NAMEOF('dim_company'[COMPANY_ORIGIN]), 4)
}

 

4 REPLIES 4
v-tsaipranay
Community Support
Community Support

Hi @maziiw ,

Thank you for reaching out to the Microsoft Fabric Community.  Also thank you @danextian , @Akash_Varuna and @Shravan133  for your insights.

 

In Power BI, field parameters provide a powerful way for users to switch between fields dynamically in visuals. It’s important to note that these parameters are intentionally static, once a field parameter is set up, its list of fields remains unchanged regardless of the report page being viewed.

If you want to display “Top 10 Countries” on Page A and “Top 10 Countries SEARCH” on Page B using the same parameter, Power BI doesn’t currently allow field parameters to adapt based on page context. Their structure is fixed and does not update automatically depending on the report page.

To achieve page-specific variations, you have strong alternatives. You can include both field versions in a single parameter and leverage filters or slicers on each page to control visibility. Alternatively, you can create separate parameters for each page and use them independently. While field parameters offer flexibility in user selection, their contents are fixed, so page-specific behavior requires targeted solutions like filters or dedicated parameters.

 

Hope this helps. Please reach out for further assistance.

If this post helps, then please consider to Accept as the solution to help the other members find it more quickly and a kudos would be appreciated.

 

Thank you.

danextian
Super User
Super User

Hi @maziiw 

Power BI can’t tell what page you're on, so you’ll need to set things up yourself. Add all the fields to your field parameter, then use page-level filters to control which ones show up on each page.





Dane Belarmino | Microsoft MVP | Proud to be a Super User!

Did I answer your question? Mark my post as a solution!


"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Need Power BI consultation, get in touch with me on LinkedIn or hire me on UpWork.
Learn with me on YouTube @DAXJutsu or follow my page on Facebook @DAXJutsuPBI.
Akash_Varuna
Community Champion
Community Champion

Hi @maziiw Field parameters are static and cannot dynamically change based on the page. To achieve this, create two separate parameters: one for Page A (with "Top 10 Countries") and one for Page B (with "Top 10 Countries SEARCH"). Use a slicer or button to detect the current page and switch parameters dynamically using a DAX measure. Alternatively, assign each parameter directly to visuals on their respective pages.

Shravan133
Super User
Super User

you can't directly change the definition of the parameter by page.

Add both fields and conditionally control visuals with DAX

1. Modify your parameter to include both versions:

 

param_gross = { ("Overall", "None", 0), ("Top 10 Countries", NAMEOF('Top X'[GROSSB_TOP10_COUNTRY]), 1), ("Top 10 Countries SEARCH", NAMEOF('Top X'[SEARCH_TOP10_COUNTRY]), 5), ("Company Region", NAMEOF('dim_company'[COMPANY_REGION]), 2), ("Company Country", NAMEOF('dim_company'[COMPANY_COUNTRY]), 3), ("Company Origin", NAMEOF('dim_company'[COMPANY_ORIGIN]), 4) }

2. Use slicer or DAX to restrict what users see on each page:

  • On Page A, filter out "Top 10 Countries SEARCH" in your slicer or set a default.

  • On Page B, filter out "Top 10 Countries" and default to the SEARCH version.

    Or, if you don’t want users to choose at all, use DAX to dynamically control the field in your measure or visual:

    3. Create a measure like:

     

     
    SelectedField = SWITCH( TRUE(), SELECTEDVALUE('Page Filter'[Page]) = "A" && SELECTEDVALUE('param_gross'[param_gross_order]) = 1, SELECTEDVALUE('Top X'[GROSSB_TOP10_COUNTRY]), SELECTEDVALUE('Page Filter'[Page]) = "B" && SELECTEDVALUE('param_gross'[param_gross_order]) = 5, SELECTEDVALUE('Top X'[SEARCH_TOP10_COUNTRY]), -- Add other mappings as needed BLANK() )

    And use this SelectedField in your visuals instead of directly using the parameter.

     

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.