Power BI – Connecting to Project Online
I have spent 12 months working with a client building a Power BI report as part of their roll out of Project Online. So this series is to document the stages and lessons learned in the past 12 months. The series will be a combination of posts and videos. This post walks through connecting to Project Online to visualise the data in Power BI.
Power BI and Project Online Series
- Connecting Power BI to Project Online data
- Reducing columns returned by Project Online
- Adding Relationships into Project Online Data
Connecting to Project Online
Navigate to your Project Online site. It will have a URL similar to:
https://mycompany.com/sites/MyProjects/default.aspx
Start Power BI Desktop, which will open a new report.
From the home ribbon click “Get Data” and find and select OData.
It will prompt you for a url to the data. From the above url, replace default.aspx with _api/projectdata/. My example url becomes:
https://mycompany.com/sites/MyProjects/_api/projectdata/
If required sign in with the correct details, it probably is an organizational account you need and click Connect.
From the long list of tables select the tables you need. For the start of this series I’m going to just import Projects, Tasks and TimeSet. TimeSet is the calendar table.
Click Load ready to build your report.
Missing Data
When you edit a project in project online it prompts you to check in when you close.
But when you go load the data into project your updates will not be visible. If you have only checked in a project the whole project will be missing. You need to publish the project for the data to be visible within Power BI.
The Publish button can be found on the Tasks ribbon when editing the schedule of your project. (Why is it not on the Project ribbon? Another mystery!)
Conclusion
The Project Online database is huge and can contain a fascinating source of data. Due to a company being able to add extra columns and select which parts of project they use connecting to Project online can create useful reporting to enhance Project.