Supplies are limited. Contact info@espc.tech right away to save your spot before the conference sells out.
Get your discountScore big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount
I have created a translytical task flow that takes customer survey text results based on dimensions selected. That data is then written to a Fabric SQL DB and used to call an OpenAI API. The result of the OpenAI API is then written to the same Fabric SQL DB table. That summarized data is then shown to the user in a viz.
I am looking for a way to hide the viz on load or the data behind the viz when the report initially loads and ONLY show it after my button is pressed and a new summarized result comes back from the API and is written into the underlying table. Any ideas on how to implement something like this?
Solved! Go to Solution.
Create a Status Table
Make a small table that just says if the summary is "Waiting" or "Ready". You can create it with this code:
ControlState = DATATABLE("Status", STRING, {{"Waiting"}, {"Ready"}})
This table doesn’t need to be connected to any other table.
Add a Slicer or Button for User Interaction
Use a slicer or button to select between “Waiting” and “Ready”. By default, it should be set to “Waiting”.
Create a Measure to Control What Shows
Write a DAX measure that shows your summary only when the status is "Ready":
ShowSummary =
IF(
SELECTEDVALUE(ControlState[Status]) = "Ready",
[YourSummarizedMeasure],
BLANK())
This will keep the visual empty until the summary is ready.
Use This Measure in the Visual
Replace the value in your chart or card with this ShowSummary measure. It will show nothing unless “Ready” is selected.
Make It Look Clean with Bookmarks
Create two bookmarks:
One with the visual hidden (for “Waiting”)
One with the visual shown (for “Ready”)
Then tie those bookmarks to a button like “Generate Summary”.
(Optional) Make It Automatic
If you want to update the status after your API response is saved:
Use Power Automate to update a flag in your database
Power BI can check that flag when it refreshes (using DirectQuery or scheduled refresh)
For References
Create and configure buttons in Power BI reports - Power BI | Microsoft Learn
Apply Conditional Table Formatting in Power BI - Power BI | Microsoft Learn
Solved: Hide a visual on page load and show only based on... - Microsoft Fabric Community
Solved: Hide/Show Visualization according to Slicer Select... - Microsoft Fabric Community
Solved: Any way to show/hide visuals depending on data? - Microsoft Fabric Community
Solved: Re: Data load and hide filter - Microsoft Fabric Community
Solved: How can I hide data from populating Visuals until ... - Microsoft Fabric Community
Translytical task flows (Preview) | Microsoft Power BI Blog | Microsoft Power BI
Tutorial - Create translytical task flow - Power BI | Microsoft Learn
Create and configure buttons in Power BI reports - Power BI | Microsoft Learn
If this post helped resolve your issue, please consider the Accepted Solution. This not only acknowledges the support provided but also helps other community members find relevant solutions more easily.
We appreciate your engagement and thank you for being an active part of the community.
Best regards,
LakshmiNarayana.
Hi @OldDogNewTricks ,
Thanks for the follow up quation
Stack Two Buttons with Transparent Layering Place two buttons (one triggering FUDF via DAX expression and another assigned to a bookmark) in the same location. Set one button's fill or shape transparency to 100% so both appear as one. This is a bit hacky, and user interaction can be tricky depending on tab order and layering, but with careful design it might work
Best Regards,
Lakshmi Narayana
Hi @OldDogNewTricks ,
Thanks for reaching out to the Microsoft fabric community forum.
Thanks for your prompt response
I wanted to follow up and confirm whether you’ve had the opportunity to review the information provided by @DataNinja777 Should you have any questions or require further clarification, please don't hesitate to reach out.
If you are still encountering any challenges, we would be happy to assist you further.
Best Regards,
Lakshmi Narayana
Create a Status Table
Make a small table that just says if the summary is "Waiting" or "Ready". You can create it with this code:
ControlState = DATATABLE("Status", STRING, {{"Waiting"}, {"Ready"}})
This table doesn’t need to be connected to any other table.
Add a Slicer or Button for User Interaction
Use a slicer or button to select between “Waiting” and “Ready”. By default, it should be set to “Waiting”.
Create a Measure to Control What Shows
Write a DAX measure that shows your summary only when the status is "Ready":
ShowSummary =
IF(
SELECTEDVALUE(ControlState[Status]) = "Ready",
[YourSummarizedMeasure],
BLANK())
This will keep the visual empty until the summary is ready.
Use This Measure in the Visual
Replace the value in your chart or card with this ShowSummary measure. It will show nothing unless “Ready” is selected.
Make It Look Clean with Bookmarks
Create two bookmarks:
One with the visual hidden (for “Waiting”)
One with the visual shown (for “Ready”)
Then tie those bookmarks to a button like “Generate Summary”.
(Optional) Make It Automatic
If you want to update the status after your API response is saved:
Use Power Automate to update a flag in your database
Power BI can check that flag when it refreshes (using DirectQuery or scheduled refresh)
For References
Create and configure buttons in Power BI reports - Power BI | Microsoft Learn
Apply Conditional Table Formatting in Power BI - Power BI | Microsoft Learn
Solved: Hide a visual on page load and show only based on... - Microsoft Fabric Community
Solved: Hide/Show Visualization according to Slicer Select... - Microsoft Fabric Community
Solved: Any way to show/hide visuals depending on data? - Microsoft Fabric Community
Solved: Re: Data load and hide filter - Microsoft Fabric Community
Solved: How can I hide data from populating Visuals until ... - Microsoft Fabric Community
Translytical task flows (Preview) | Microsoft Power BI Blog | Microsoft Power BI
Tutorial - Create translytical task flow - Power BI | Microsoft Learn
Create and configure buttons in Power BI reports - Power BI | Microsoft Learn
If this post helped resolve your issue, please consider the Accepted Solution. This not only acknowledges the support provided but also helps other community members find relevant solutions more easily.
We appreciate your engagement and thank you for being an active part of the community.
Best regards,
LakshmiNarayana.
I appreciate your suggestion. Currently the button that is clicked to generate the summary triggers the FUDF, are you aware of a way to have a single button triggering both a FUDF and bookmark?
Hi @OldDogNewTricks ,
Thanks for the follow up quation
Stack Two Buttons with Transparent Layering Place two buttons (one triggering FUDF via DAX expression and another assigned to a bookmark) in the same location. Set one button's fill or shape transparency to 100% so both appear as one. This is a bit hacky, and user interaction can be tricky depending on tab order and layering, but with careful design it might work
Best Regards,
Lakshmi Narayana
Hi @OldDogNewTricks ,
If your issue has been resolved, please consider marking the most helpful reply as the accepted solution. This helps other community members who may encounter the same issue to find answers more efficiently.
If you're still facing challenges, feel free to let us know we’ll be glad to assist you further.
Looking forward to your response.
Best regards,
LakshmiNarayana.
As we haven't heard back from you, we are closing this thread. If you are still experiencing the same issue, we kindly request you to create a new thread we’ll be happy to assist you further.
Thank you for your patience and support.
If our response was helpful, please mark it as Accepted as Solution and consider giving a Kudos. Feel free to reach out if you need any further assistance.
Best Regards,
Lakshmi Narayana
Hi @OldDogNewTricks ,
To achieve the goal of hiding a visualization on initial load and showing it only after a button press triggers your data refresh, you can primarily use Power BI's Bookmarks and Selection Pane feature. This is the most direct and common way to manage the visibility of report elements.
First, you'll want to establish the initial "hidden" state. Open the View tab and enable the Selection pane. In this pane, you will see a list of all objects on your report page; find your specific visualization and click the eye icon next to it to make it invisible. You might consider adding a text box or an image as a placeholder to instruct the user on what to do next. With the visual hidden, open the Bookmarks pane (also in the View tab) and add a new bookmark, naming it something like Viz Hidden. It is crucial that you click the ellipsis (...) next to this new bookmark and ensure the "Data" option is unchecked, so it only saves the object's visibility state.
Next, create the "visible" state by making the visual appear and hiding your placeholder message via the Selection pane. Now, capture this state by adding another bookmark named Viz Visible, again making sure the "Data" option is unchecked. The final step is to configure your button. Select the button that initiates your OpenAI API call, go to its Format options, enable the Action toggle, set the Type to Bookmark, and choose your Viz Visible bookmark from the dropdown. Before you save and publish, select the Viz Hidden bookmark to set it as the default view for the page.
For a more advanced and seamless integration that reveals the visual only after the data is confirmed to be ready, you could use a DAX measure to dynamically control visibility. This method is more complex because it requires your external process to write a status back to your database. You would need a control table in your Fabric SQL DB, perhaps named ProcessStatus, with a column like IsDataReady. When your task flow successfully retrieves the OpenAI summary and writes it to your main table, it would also update a row in this control table, setting the IsDataReady value to 1. In Power BI, you would then create a DAX measure that checks this status. This measure doesn't control visibility directly but rather the color of a shape you'll use to overlay your visual.
OverlayColor =
VAR IsReady = MAX(ProcessStatus[IsDataReady])
RETURN
IF(IsReady = 1,
"#FFFFFF00", -- Fully Transparent White
"#FFFFFF" -- Opaque White
)
You would place a rectangle shape covering your entire visual and any placeholder text on top of this shape. Then, using conditional formatting on the shape's color property, you would set the format style to "Field value" and select your OverlayColor measure. On initial load, the measure returns an opaque white color, effectively hiding the visual behind it. Once your button is pressed and the background process completes, it updates the IsDataReady flag, the DAX measure recalculates to produce a transparent color, and the shape disappears to reveal the visual with the newly loaded data.
Best regards,
I appreciate your suggestions!
Unfortunatly I do not believe the bookmark solution will work because I believe that the button can only have one action and right now that button is triggering the FUDF. Unless you are aware of a way that I could have a single button trigger two actions (bookmark & FUDF)?
The data/DAX solution may work, but it is less than elegant given that we would be hardcoding colors and users can change that in the serice (e.g. select greyscale, dark themes, etc...).
Is anyone aware of the ability to trigger the visibliity setting for a viz w/ a DAX formula? Or being able to set default visibilty state on load or action (besides bookmarks, unless I can trigger multiple actions with a single button)?