This blog post explains, at a very high level, how to process a file delivered via email into a Power BI report using Microsoft Flow. The post assumes prior knowledge of Power BI Desktop and will only describe the steps needed to incorporate the file into the Power BI Query Editor.
Let’s get started.
The best practice is to have the file sent to a dedicated, non-expiring email address. Once this is established, the following steps outline how to set up a flow that watches for delivery of the email with the attached file.
Start off by logging into flow.microsoft.com with a valid login. You will be directed to the home page. In the search box, type: “Save email attachment to SharePoint” and hit the search icon:
From here, you’ll be taken to a screen that lists preexisting flow-templates for saving a file to SharePoint. Select the first flow, as shown below:
The following screen will appear. Click “Continue” at the bottom of the screen:
Enter the email To and From info in the ‘On new email with attachment’ box:
Set up the condition to check ‘Attachment Name’ for specific characters in the file name:
In the ‘If yes’ container, enter the SharePoint information in the ‘Copy File’ Action box. At this point, I removed all objects in the ‘If no’ container, but feel free to add logic in this container, if desired:
Click ‘Save’ and test the flow to ensure the file has been delivered to the correct SharePoint folder for Power BI processing:
Open Power BI Desktop and click ‘Edit Queries’. Once in the Power Query Editor, select SharePoint folder from ‘New Source’:
Enter a valid SharePoint address:
Filter on the file name that you want to process in the report:
From this point, you can edit the file in the query editor, develop the data model and report in the Power BI desktop, publish the report to the Power BI service, and schedule the report to run on a timely schedule. Lastly, if your organization needs more help with any aspect of Microsoft Flow, please don’t hesitate to reach out to us. We’d love to help you get started.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
|cookielawinfo-checbox-analytics||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".|
|cookielawinfo-checbox-functional||11 months||The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".|
|cookielawinfo-checbox-others||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.|
|cookielawinfo-checkbox-necessary||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".|
|cookielawinfo-checkbox-performance||11 months||This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".|
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.