Dynamics 365 PSA v2 to v3 Upgrade failed? Here’s what to do.

This is a little tricky upgrade from PSA v2 to PSA v3. I’m sure by this time of the year, most of you must have upgraded and this post by me comes a little late than it should.

Here’s my experience and what help from Microsoft Support I needed to complete the Upgrade successfully.

So usually, this is what you expect when you initiate the upgrade process. You go to the Instance Picker from Dynamics 365 Admin Center.
upgradeButton

And you can see that you are on PSA v2.4.x version and the New version available is 3.10.x. When you kick off, it starts running
upgradeInProgress
But, it fails like this.
installFailed

Let’s take a stab at it!

I usually prefer to go with the old school classic Instance Picker, if you want to have a quick access to it, check this post – D365 Admin Center: Instance Picker Link

Solution Health Hub

Note: Please be aware that below mentioned steps that involve Project Service & Project Service Upgrade Rule Set can only be provisioned by Microsoft Support and we need to create a Support Request with Microsoft for them to provide this Rule Set. These comes in a Managed Solution Microsoft Support installs from their end into your environment.

  1. Assuming Microsoft Support has enabled this Rule Set for your organization, you can go to Solution Health Hub
    createNewAnalysisJob
  2. Then, select either Project Service or Project Service Upgrade
    ruleSet
  3. It will automatically run asynchronously as and when you create it. It should display results in a few moments.
    failedValidation
    In this case, my failures were that Resource Requirement records didn’t have Hours & Resources were not filled in. Some Project Tasks didn’t have Project attached to them which resulted in corrupted PSA data according to the Rule Set and hence, the upgrade fails.
  4. Now, in my case, I cleaned this data manually. Post that, I created another Analysis Job to ensure that there are no more failures.
    passedRuleSet
    Also, there’s another Rule that isn’t mentioned here but is a reason for failure. That is – Project Name (msdyn_Subject) should NOT be Blank. Use Advanced Find to find these records and correct manually.  Please ensure this manually as it won’t appear here. 
  5. Now, there’s a workflow called as Update User Work History. It should have shown 3.3 or higher in the version to select, unfortunately, this will come once the upgrade fails 1 time.
    oldWF
  6. Now, you are all set to kick off Upgrade Once again. It will fail due to the incorrect workflow mentioned above in #5.
    installFailed
  7. Now, you can go back and check that workflow, it should have the correct version appearing (due to the partial upgrade that happened in #6 above, which eventually failed)
    updateUserWorkHours
    Set this to 3.3 and Activate the workflow again.
  8. Now, trigger the Update to PSA v3 one more time. And this time it should go through correctly.
    installedPlease note, due to constant upgrades in the platform/PSA, there could still be some undetected issues which could result in failure. Hence, I tried to put what I experienced in general.

    Post this, also ensure that all SDK Message Process Steps and related Workflows related to PSA are enabled.

In case you are also looking to find out about dependencies about failed Solution Upgrades, you can check this post too – Check Managed Solution failures in Solution History in D365 CE

Hope this helps!

PSA v3 View Custom Controls used on Project form

Here’s a summary of what all Custom Controls are used in the out-of-the-box PSA v3 Project form. I strongly recommend not changing the existing controls/views.

However, if you accidentally delete any Tab/View, this post will help you get it back! 🙂

Project Task View

Project Task uses AdditionalColumns as the Default View from entity Project Tasks (Project)
projectTaskView

and the Control used is CC_ProjectTaskControl and note that the CC_TrackingView is CC_ProjectTaskControl_NotTracking, you’ll see a different CC_TrackingView used later below.
projectTaskControl

 

Resource Assignments View

Resource Assignment uses Active Estimates as the Default View from entity Project Tasks (Project)

resourceAssignmentView.png

And uses CC_ViewType as CC_EstimatesGridControl_AssignmentView
resourceAssignmentControl

Resource Reconciliation View

Resource Reconciliation View also uses the same Active Estimates View as in Resource Assignments
estimatesView

but uses CC_ReconciliationControl for the control
reconciliationControl

Estimates View

Again, Estimates View uses the same Estimates view as mentioned in the Reconciliation View and Resource Assignments View above.
estimatesView

Also, it uses the same CC_EstimatedGridControl but the CC_ViewType is CC_EstimatesGridControl_FinancialView
estimatesFinancialView

Tracking View

Tracking View uses the All Project Tasks as the Default View
trackingView

It uses the same CC_ProjectTaskControl as used in the Project Task view but CC_TrackingView here is CC_ProjectTaskControl_Tracking
TrackingControl

Expense Estimates View

Again, Expense Estimates View uses the same Estimates view as mentioned in the Reconciliation View, Resource Assignments View & Estimates view above.
estimatesView

But the CC_ViewType used is CC_EstimatesGridControl_ExpenseView
expenseViewControl.png

 

Hope this summarizes and helps you build your custom form quicker.

D365 PSA v3 – Resource Assignment and Booking

Now, since PSA v3 is a major shift from it’s previous version, ways to do certain things have changed. Let’s quickly look at one of the many ways to book a resource by Assigning them and then Booking them in PSA v3.

Project

I have a sample Project called Grand Chocolatiers Inc. whose Schedule looks like this (the WBS is now Schedule in PSA v3) –
project

I will now Assign and Book a Resource to show you how this is done in PSA v3.

Assigning Resources

1. Now, you don’t have any resources Assigned to the Project you just created, so let’s go to the Schedule in the Project and add a new Resource, say, Alicia Baker
addAlicia

aliciaAdded

I’ve added Alicia Baker without booking her.

2. Coming to the Team and refreshing the grid, I’ll see Alicia being Assigned the 12 Hours.

aliciaAssigned

 

Booking Resource

  1. Now, I’ll come to the Resource Reconciliation section and see how I can book Alicia on the task. I’ll select the Previous Difference in order for me to see the distribution I want to book Alicia on.
    aliciaInRecon
  2. After I double click on the Hours denoted (1), I’ll see and expanded view (2)
    expandExtension
    expandedExtension
  3. Now, if I only select the below highlighted days, I’ll be booking Alicia for those hours on the 3 selected days only
    select3Days
  4. Then, I’ll click on Extend Booking
    extendBooking
  5. Once I confirm the 3 days that I see, the resource will be booked for that time
    confirmExtension
  6. And I’ll see the updated Reconciliation View after I book the resource
    extensionCleared
  7. Now, if you check the Team or the Schedule Board, you’ll be able to see that Alicia is now Booked for the selected duration
    aliciaIsBookd

Hope that was helpful!

To read more about Reconciliation View in D365 PSA v3, refer Kuldeep Gupta‘s blog post on Reconciliation View & Scheduling a Resource in PSA v3

Cheers!

D365 Unified Interface: Enabling embedded legacy dialogs / Advanced Find

Quite simply put, some of the embedded dialogs like the Advanced Find, Merge Records, Assign window are not by default visible on the Unified ClientnoButtons

Like when you multi-select records, you can’t see the typical Merge, Edit buttons on the ribbon.

Here’s how you enable them

System Settings

In your Web Application’s system settings, you have an option under general where you can enable these buttons in the Unified Interface

systemSettings

Now, you can retain those buttons in the Unified Interface as well

visibleButtons

Have a great time exploring Unified Interface!

Get GA version of Dynamics 365 PSA v3 from Insider program

Hi! Dynamics 365 PSA v3 just hit v3 lately and here’s how you can get it.

  1. You’ll need to be an Insider program member to be able to subscribe to the GA program.
    Dynamics Insider Program
    insider Home Scree
  2. Look for the D365 For PSA Unified Interface Program
    psaUnified
  3. Signup Link on the details section
    signUpLink
  4. Fill out the form which asks your info about the tenant details and you can get your D365 PSA v3 GA on your tenant in a day or two.
    installV3

Hope this quick one helps you. 🙂