Download example #MicrosoftFlow for Syncing #MSProject #Roadmap Row Item Status with #ProjectOnline Task Status #CDS #PowerPlatform #MSFlow #REST #SharePoint #WorkManagement #Office365

June 19, 2019 at 11:17 pm | Posted in Add-on, Administration, App, Configuration, Customisation, Functionality, Information, Reporting, Workarounds | Comments Off on Download example #MicrosoftFlow for Syncing #MSProject #Roadmap Row Item Status with #ProjectOnline Task Status #CDS #PowerPlatform #MSFlow #REST #SharePoint #WorkManagement #Office365
Tags: , , , , , , ,

Following on from a recent blog post where I demonstrated an example Microsoft Flow for syncing the Roadmap row item status with the associated Office 365 Project Online Task status, I have now made this solution starter Flow available as a package that can be downloaded and imported. For those of you that missed the previous blog post, a link can be found below here: https://pwmather.wordpress.com/2019/05/27/sync-msproject-roadmap-row-item-status-with-projectonline-task-status-using-microsoftflow-cds-powerplatform-msflow-rest-sharepoint-workmanagement-office365/

FlowImage

The Flow package can be downloaded from the Microsoft Gallery here: https://gallery.technet.microsoft.com/Flow-to-Sync-Roadmap-item-44174a4b

Once downloaded the Flow can be imported, here is a Microsoft Flow blog post on exporting and importing Flow packages: https://flow.microsoft.com/en-us/blog/import-export-bap-packages/

Once imported and the connections all set – this will require a Flow P1 or P2 license as it uses the CDS connector, ensure the account has the correct access to Project Online and the CDS, open the flow and update the trigger and actions as these will currently point to one of my demo tenants:

  1. Update the “When a project is published” trigger with your PWA URL
  2. Update the “GetTaskHealth” action the correct site address for your PWA URL
  3. Update the “GetTaskHealth” action Uri to use the correct task level field, replace “RoadmapHealth” as needed
  4. Update the Switch action to use the correct task custom field – the expression would be items(‘Apply_to_each’)[‘FieldName’] – replace the field name with the correct task field
  5. Ensure the Case statements are updated to match the possible values in your custom field and map to the correct roadmap status value:
      • On Track = 0
      • Potential Problem = 1
      • At Risk = 2
      • Complete = 10
      • Not Set = 100
  6. Update the “List records” action to point to the correct environment
  7. Update the “Update a record” action to point to the correct environment

Now save the Flow and test it.

Hopefully you find this useful as a solution starter.

Advertisements

Sync #MSProject #Roadmap Row Item Status with #ProjectOnline Task Status using #MicrosoftFlow #CDS #PowerPlatform #MSFlow #REST #SharePoint #WorkManagement #Office365

May 27, 2019 at 9:36 pm | Posted in Administration, Configuration, Functionality, Information, Reporting | 1 Comment
Tags: , , , , , , ,

At the recent Microsoft PPM Summit in Prague last week, Chris Boyd from the Microsoft Project Product team demonstrated syncing the Roadmap row item status with the task status from the Project Online schedule. This was done using compiled code in a console application which worked well. I set myself a little challenge to do something similar but all from Microsoft Flow. Being a public holiday here in the UK, I found an hour spare today to tackle this. In this blog post I walkthrough the Flow actions required to do this. A summary image can be seen below:

image

As you can see, this flow is triggered on a Project Online Project Publish. I then execute a REST query on the Project Data API using the send an HTTP request to SharePoint action:

image

I pass in the published project ID and select the TaskID and the custom field I’m using to set the Roadmap row item status. I created a custom field called “Roadmap Health” that was a lookup with the same status values as Roadmap but you can use any field and values, just update the query and Flow Switch action as needed.

I then create a new variable called “Health” and set the Type to an Integer:

image

I then add an Apply to each action and pass in the body(‘GetTaskHealth’)[‘value’] expression to use the output from my REST call:

image

I then have a condition check action to check for null values in the Roadmap Health field, the expression for the field is items(‘Apply_to_each’)[‘RoadmapHealth’] then null is also added via an expression:

image

You could remove the need for the condition check by filtering out the nulls in the REST call. If this is false, nothing happens as there is no status to sync, if this true the next action is a  Switch, the field I’m using in the switch is referenced using the expression: items(‘Apply_to_each’)[‘RoadmapHealth’]

image

Then for each possible value from the task level custom field you are using, map this to one of the Roadmap status’ by setting the Health variable, for example, when the Roadmap Health task field value is equal to “On Track” I set the variable to 0:

image

The Roadmap status enumerations are below:

  • On Track = 0
  • Potential Problem = 1
  • At Risk = 2
  • Complete = 10
  • Not Set = 100

Once that is completed for all possible outcomes, the next action is the List records Common Data Service action:

image

Here the Flow returns the Roadmap Item Link record for the TaskId passed in, the TaskId is referenced using the following expression: items(‘Apply_to_each’)[‘TaskId’]

The next action is another Apply to each action, Flow does this automatically as the List records would typically return more than one record:

image

The output used for this action is the default List records value from the Dynamic Content option. Then the final action within the Flow is the Common Data Service Update a record:

image

This action updates the Roadmap Items, I then pass in the List records Roadmap Item value from the Dynamic content panel, this is the Roadmap Item Id value. I also pass in the Health variable in the “Health Status Value” field. The flow will loop through all Project tasks and update the equivalent Roadmap row item status, pretty simple for a no / low code solution using only Microsoft Flow!

Over the next few days I will publish a short video for this Flow on my YouTube channel and also probably provide a download link for this Flow template to help as a solution starter.

#ProjectOnline PWA Project Details Page integration with Project Roadmap #Office365 #PPM #PowerPlatform #MSFlow

January 16, 2019 at 7:22 pm | Posted in Administration, Functionality, Information, Reporting | 1 Comment
Tags: , , , , ,

As you are probably aware by now, the new Roadmap feature is live in Project Home as detailed in this blog post: https://pwmather.wordpress.com/2018/12/19/project-roadmap-is-live-ppm-projectmanagement-msproject-projectonline-office365-powerplatfom/ This post covers a new button that would have appeared in your Project Online PWA instance:

image

This new Add to Roadmap button is on the Task tab on Schedule Project Detail Page. This enables you to add published tasks to a project roadmap directly in Project Online PWA without having to navigate away to the Project Home, open the Roadmap then adding the tasks via the Roadmap interface.

When the current project is linked to a roadmap row with at least one task selected (you can select multiple), clicking this will load a modal pop up:

image

You will then need to select the correct Roadmap and Row using the dropdowns. Only Roadmaps and Rows will appear where the current project is already linked. Here is one Roadmap where this project is linked:

image

I’ve selected the Deployment task then clicked the Add to Roadmap button then selected the Roadmap and Row as seen below:

image

Clicking Add will start the process to add the task:

image

Once completed you will see the added to roadmap message as below with a clickable link to the roadmap:

image

Accessing the roadmap will now show the new task added:

image

If you try the Add to Roadmap button for a project that is not linked to a Project Roadmap you will see this modal popup:

image

A great enhancement to Project Online!

#Microsoft #Project Roadmap product at a glance #PPM #Office365 #Flow #PowerPlatform #Dynamics365 #Azure #AzureBoards

September 26, 2018 at 4:40 pm | Posted in Functionality, Information | 1 Comment
Tags: , , , , , ,

Following on from the announcements on Monday at Ignite from the Project product group, there was a session today on the Project Home and Roadmap products. For those that missed the post on the announcements, here is a link to the blog post that has some notes around this: https://pwmather.wordpress.com/2018/09/24/microsoft-project-the-future-ignite-ppm-pmot-workmanagement-projectonline-projectmanagement/

In this blog post I will include some screen shots taken from Chris’ session today at Ignite and mention some of the features that Roadmap has. I wont talk about Project Home here as I already blogged about that previously: https://pwmather.wordpress.com/2018/08/20/new-projectonline-project-home-office365-ppm-ui-ux-msproject-fabricui/

So Roadmap is the new product that is planned to be available early 2019. Roadmap is a product that enables organisations to visualise projects from various different tools in one timeline type view. On the first release it will support Project Online projects as well as Azure Board projects (formerly known as VSTS) with a view to supporting other types of projects in later releases such as Planner projects, new Project Service projects etc. To give you some context before we move on, here is a screenshot of a Roadmap from Chris’ slide deck today:

image

As you can see from the screen show about, each project is a row, each row has a name (free text – not the actual linked project name) and an owner (free select people picker from the the tenant users – not the actual linked project owner). Then in the details you can add tasks from the linked projects. On the timeline you can add key dates. You have full control over the order of the rows, move these up and down as you like using the Move Up and Move Down buttons.

Roadmaps will be created and accessed in the Project Home product, the Create New button in Project Home will contain the Roadmap option once released. This will load a blank canvas pretty much instantly. The roadmaps can be renamed at any time by clicking the name in the top left corner, that loads a Roadmap panel, here you also set the Roadmap owner:

image

To add a new project,firstly you would use the Add row button, type the name of the row and set the owner for the row. You can then connect the row to a Project Online project or an Azure Boards projects in the first release (more project type support to come later). When connecting a row to a project, firstly select whether it is a Project Online or Azure Boards project, then put the correct URL in for that service. Once connected to that service, you can start typing the name of the project you want to connect to then the list of projects will start to appear for you to select. You then connect to that project (using a Microsoft Flow in the background). You can then use the Add Row Item button with that row selected, that will open the add row items panel. Here you can start typing the names of the tasks you want to add then the list of tasks will appear for you to select. Once you have selected all of the tasks (you see a preview table of selected tasks with start and end dates in the row items panel) you then add those to that row. These will be linked to the source project, so as the data changes in the source project, Microsoft Flow will pick up the changes and update the synced data the Roadmap project row is using in the Roadmap common data service (CDS) database. Part of the Flow seen below:

image

Tasks in the roadmap can be given a status of either Unset Status, On Track, Potential Problems, At Risk or Done using the task card:

image

Setting the status will update the task bar on the Roadmap.

Key dates are added to the Roadmap using the Add key date button, this loads a pop to create the key date and set the status (same status options as tasks):

image

For Roadmaps with large numbers of projects added, you can filter by the row / project owner:

image

You also have a zoom control to change the zoom of the timeline.

Access to the Roadmap is controlled via the Office 365 Groups via the Roadmap interface, to add users click the Members button and type the users names:

image

So each Roadmap will get to make use of all the features Office 365 Groups enables such a SharePoint site, SharePoint document library, Shared Inbox, Calendars etc. Using Office 365 Groups means Roadmaps can either be private or public.

That’s is for now, but I’m looking forward to getting access to this!

Before I finish, another interesting slide Chris shared was the Platform one to give an idea of how things are architected (high level):

image

There are lots of exciting changes happening in Project!

Create a free website or blog at WordPress.com.
Entries and comments feeds.