When discussing with customers how they are using Power BI to improve collaborative business processes in their organizations, we often hear that Power BI is used to summarize and visualize the data that many end users are entering, such as Excel files, SharePoint lists, or common data services. Business processes such as managing the team’s budget requests, planning recruitment campaigns, and evaluating marketing campaigns all fit this pattern.
For such processes, users typically want to update Power BI reports as soon as data is entered into the underlying system. Power BI’s existing fixed refresh schedule is inadequate for this task, and having to manually refresh the Power BI data set every time you access a report adds additional steps and creates confusion.
Now, the development team has made refresh scheduling more flexible to improve the way Power BI works in this process. Specifically, the development team added a new refresh data set operation to the Power BI connector for Microsoft Flow. You will now be able to trigger a dataset refresh based on hundreds of Flow triggers. There are many use cases for this operation, whether the trigger is based on changes to items in a SharePoint list, updates to Excel files in OneDrive or SharePoint Online, or complex dates and schedules.
I’m excited to think about it! Read on for a complete tutorial on automatically refreshing Power BI reports with SharePoint list changes using the new refresh data set operation. Or, head over to Flow and try it out for yourself.
Tutorial: Use Flow and Power BI to trigger a data set refresh of a SharePoint list or OneDrive Excel file
In this tutorial, we will create a process that triggers a data set refresh when items in the SharePoint list are updated.
Consider this example: You are an office administrator for Northwind Traders, and your responsibility is to ensure that your office has adequate supplies by monitoring inventory, placing new orders, and maintaining your team’s overall budget. You might have a report like this:
Assume that each employee in the company has access to a SharePoint list to report supplies that are in short supply in the office:
To ensure that you have an accurate understanding of supply requests and budget levels, any requests made on this SharePoint list should be immediately reflected in the report. You can easily automate this process using the new dataset refresh operation in Flow, rather than having to manually refresh the dataset every time you or someone else looks at a report or waits for the next scheduled refresh. Download the Power BI Desktop official edition
To get started, navigate to Flow, log in, go to my Flow, select + New, and then select + Automatic from the blank space in the drop down menu. You should see the following:
Go ahead, name your Flow, and then select a SharePoint trigger based on your use case. In this example, because we want the flow to fire when a new row is added to the list, select when the project is created or modified.
Next, click the + New step button and type ‘Power BI’ in the search box. You should see the following action list:
Then select the new Refresh A Dataset action.
Now we move on to the final step of the flow: select the name of the workspace, and then the name of the dataset to trigger the refresh. In our case, we chose the Northwind Traders workspace and the Northwind budget tracking dataset.
That’s it! Select Save and make sure your stream is open. Now, every time there is a new provisioning request in the SharePoint list, your budget tracking data set should automatically refresh.
Returning to the Budget tracking example from Northwind Traders, if a new request to the “consumables Request SharePoint” list exceeds the budget:
Your process will fire and the data set will be updated automatically. Considering this person, who ordered 500 4K monitors, you’ll surely know when you don’t have a budget the next time you visit Northwind Budget&Supplies:
The next step
-
Try this feature! Go to Flow and perform the refresh automatically with the new refresh operation.
-
When the refresh dataset operation is run in Microsoft Flow, existing restrictions on the refresh are applied. For shared capacity datasets used by Power BI Pro, your refresh operations are limited to eight per day (including those performed through scheduled refresh). In advanced capacity, there is no limit to the number of flushes per day, although you are limited by the resources available in the capacity. If there are not enough resources, the refresh execution may be restricted until the load is reduced. If this limit exceeds 1 hour, the refresh will fail.
-
For more ideas on flows, check out some of the existing Flow templates that let you add data from flows to Power BI datasets or use data alerts to trigger flows when data changes. In the coming weeks, the development team will also add several Flow templates, including new operations to refresh the dataset, including those described in the tutorial above. Stay tuned.