Continuing with the Power App for Microsoft Project SharePoint task list data, in this post we look at examples for building capabilities into the app that will enhance the Microsoft Project experience. If you missed part 3 we covered syncing the Microsoft Project data to the Power App Common Data Service (CDS) using a Power Automate flow, this can be found here: https://pwmather.wordpress.com/2020/04/27/building-a-powerapps-app-for-msproject-data-part-3-sharepoint-powerplatform-powerautomate-lessmodemorepower-nocode-cds-office365/
The initial app can be seen below (we covered this in part 2: https://pwmather.wordpress.com/2020/04/25/building-a-powerapps-app-for-msproject-data-part-2-sharepoint-powerplatform-powerautomate-lessmodemorepower-nocode-cds-office365/):
As you can see, I like a test project, naming things is hard! Accessing a project then loads the project details:
Only the Project Description field is editable as the Project Name and Task List URL are controlled by the Power Automate flow as these come from SharePoint. The Tasks tab shows the tasks from the Microsoft Project plan (via the flow from the SharePoint task list):
Accessing a task shows the task form:
Only the Highlight field is editable as the other fields are controlled by the Power Automate flow as these come from SharePoint. Now we will continue building this app with additional Project and Task fields and provide the ability to manage Risks for these projects. If you have been following along with the blog series, access the solution:
Then access the MPP Project entity:
We will add a new field for Overall RAG Status, click the + Add Field button and complete the form, select the Data Type as Option Set as we want a pick list of Red, Amber and Green. Click the + New option set option:
Complete the form for the new option set and click Save:
Complete the form for the new field and press Done:
Repeat this process for other fields you want to add based on your requirements. It could be fields like Project Category, Program, Project Type etc. Save the entity using the Save Entity button. Access the Views for the MPP Project entity and add the new fields to the existing view or create new views as needed:
Once the view is updated remember to Save and Publish the each view. Now access the Forms for the MPP Project and edit the forms as required to add the new fields in:
Save and Publish the form when completed. Navigate back to the solution and access the MPP Tasks entity. Repeat the process for this entity by add in the required Task level fields, add those fields to the views and forms. I’ve just added two field, one called “Task RAG” and one called “Task Notes” as you can see on the view and form below:
Now navigate back to the solution and create a new entity:
Complete the new entity form and press Create:
Now add the fields to the new MPP Risk entity and save the entity, I added the following:
- Risk Details as Text Area field
- Impact as a Whole Number field with a minimum value of 0 and a maximum value of 10
- Probability as a Whole Number field with a minimum value of 0 and a maximum value of 10
- Exposure as a Whole Number field set to be a calculated field with a calculation of Probability * Impact
- Risk Status as an Option Set field using an option set with Open and Close options with a default option set to Open
- Due Date as a Date Only field
- Assigned To as a Lookup field to the User entity
- Related Project as a Lookup field to the MPP Project entity
- This field creates the relationship between the risks and the project
Now create the views required such as:
Save and Publish the views. Now create the form/s, I created:
Save and Publish the form/s. We probably want to see the risks as a tab when looking at the project record. Navigate back the solution and open the MPP Project entity and access the forms then open the main form and add a 1-column tab from the components list – call this tab “Risks”. Then add the Subgrid component into the new Risks tab section – check the Show related records option then select the MPP Risks entity and set the correct view:
Update the properties such as labels and names as needed:
Publish the updated MPP Project form. Now we need to add the MPP Risk entity in to the app so that we can view all risks across all projects. Navigate back the solution and open the site map to load the Sitemap Designer and add a new Group. I called this Logs so that it could be used for Risks, Issues etc. Then added a new sub area in the Logs group for the MPP Risk entity:
Save the site map then Publish once complete Save and Close the site map. Now access the app and you will see the Logs group and Risks sub area:
This is the central risks views across all projects. Access a project and you will see the Risks tab:
Access the Risks tab and you will see just the risks for the current project:
That’s it for part 4, there are lots of other features you can add but hopefully this gives you a good starting point for building a project management Power Apps app around the Microsoft Project Desktop data. For other ideas for features to add to the app, there are some links below for another blog series I’m doing for extending Project for the web:
- Part 1 – adding an Issues log: https://pwmather.wordpress.com/2019/12/13/extending-projectfortheweb-part1-ppm-cds-msdyn365-powerplatform-msproject-powerapps/
- Part 2 – creating the app: https://pwmather.wordpress.com/2019/12/19/extending-projectfortheweb-part2-ppm-cds-msdyn365-powerplatform-msproject-powerapps/
- Part 3 – adding Risks: https://pwmather.wordpress.com/2019/12/23/extending-projectfortheweb-part3-ppm-cds-msdyn365-powerplatform-msproject-powerapps/
- Part 4 – building a Risk to Issue escalation type process and extending the project data: https://pwmather.wordpress.com/2020/01/06/extending-projectfortheweb-part4-ppm-cds-msdyn365-powerplatform-msproject-powerapps-powerautomate/
- Part 5 - adding more entities such as a Program entity a Project Status Update entity, a word export: https://pwmather.wordpress.com/2020/01/09/extending-projectfortheweb-part5-ppm-cds-msdyn365-powerplatform-msproject-powerapps-powerautomate/
- Part 6 – adding a business process flow and business rules for fields: https://pwmather.wordpress.com/2020/02/06/extending-projectfortheweb-part6-ppm-cds-msdyn365-powerplatform-msproject-powerapps-poweraddicts/
- Part 7 – creating a snapshot type process in the business process flow: https://pwmather.wordpress.com/2020/03/12/extending-projectfortheweb-part7-ppm-cds-msdyn365-powerplatform-msproject-powerapps-powerautomate-poweraddicts/
- Part 8 – using the snapshot feature and accessing the snapshot data plus another variation of the snapshot for tracking changes: https://pwmather.wordpress.com/2020/03/23/extending-projectfortheweb-part8-ppm-cds-msdyn365-powerplatform-msproject-powerapps-powerautomate-poweraddicts/
- Part 9 – charts and dashboard: https://pwmather.wordpress.com/2020/04/10/extending-projectfortheweb-part9-ppm-cds-msdyn365-powerplatform-msproject-powerapps-poweraddict-lesscodemorepower-workmanagement/
There will be a few more posts on coming on the Project for the web series. The final part to this mini series for Project MPP data will be part 5 where we will look at some simple Power BI reports for the MPP Projects data.