Dynamics 365 for Project Service Automation

This will focus on all things relating to Dynamics 365 PSA.

Utilization by role is blank – Dynamics 365 CE PSA

Does your “Utilization by Role” chart look as blank as mine (see image below)!?? Well coming from an F ‘n’ O background I wasn’t sure of the issue at first but then I thought maybe the data is not being gathered… then I was curious if CE has the concept of batch jops like we do in Finance and Ops… VOILA it does!!!

By going to Project Service>Settings>Batch Jobs:

Then creating a new Batch Job named “Utilisation Charts” selecting its frequency and setting it as active then saving. Allowed me to then select “Run Workflow:

From there I could select the “UpdateRoleUtlization” workflow:

Then BOOM, sweet, sweet dataaaaaaaaa:



Resource Allocation mode: Hybrid or Central?

The smallest post I’ve ever produced:

What on earth does “Resource allocation mode” mean on the Customer Engagement Project Services Automation Parameters?

Well, it turns out it that the two choices of “Hybrid or “Central” are quite simple in meaning:

  • Central: Only resource managers can allocate resources to projects.
  • Hybrid: Resource managers, project managers, and account managers can allocate resources to projects.

A perfect way to control resource allocation within the environment.

Boom, I’m glad we cleared that up – now stop reading this and get back to work 😉

My Quest to D365 Saturday Stockholm

Recently I attended the Dynamics 365 Saturday event in Stockholm and I have to say, what an excellent event. I have never been to Stockholm, so I was already massively excited about this. I also got to meet a load of new people for the first time which was AMAZING!

These events are so important for the community because they are often the only opportunities some of the community members really have to interact with other customers, partners ISVs and Microsoft employees. I love running into people that have encountered the same issues as I have, that way I know I’m not going bonkers and we can work on a solution together.

The crowd was great! There were many enthusiastic people in the audience who were really getting involved in the sessions, looking for information and really testing all of the speakers knowledge. You can find the list of sessions and speakers HERE.

I big reason I really enjoyed this event was the different layers and levels of content being shared across the sessions. The sessions were split into three tracks, these being:

Applications (Dynamics 365 CE), Dev (Dynamics 365 CE) and Business & Project Management. This gave participants the opportunity to stick to a single, themed, track or weave between tracks. This is pretty much how my experience went. I went to at least 1 session from each track. I wanted to get a flavour for everything. I also got to see some wizardry from folks like Julie Yack, Gus Gonzalez, Nick Doelman and Gustaf Westerlund.

Other presenters and panellists included Sara Lagerquist, Jonas Rapp, Fredrik Niederud, Katherine Hogseth, Mark Smith and Antti Pajunen. Each delivering some amazing content based on their experiences with Dynamics 365 and Power Platform.

There was a plethora of information and content being shared between speakers and passionate attendees. Everything from Microsoft Portals and Social Engagement to developing your own XrmToolBox tools (Careful with the spelling here….HAHA) was being talked about. I personally got involved in a number of Power Platform conversations, which suited me just fine because that’s kinda what I’m doing at the moment.

I had the pleasure of running 2 sessions. One in the Application track and one in the Dev track (I am no developer… Don’t judge me). The 2 sessions were:

  1. Power Platform – How it all fits together (Download Here)
  2. Building your first Canvas App with CDS, and Azure (Download Here)

Apparently people don’t like the first 2 rows.. great crowd though! Thanks to everyone that attended. Try work out what Mark is doing in the background there! HAHA!

The first presentation focused on the different elements of the Power Platform and the way it all works together. Many Dynamics 365 users often worry a bit about this because it seems so large and complicated, but it really isn’t once you have wrapped your head around the different technologies. To highlight the way the different elements of the technology worked together I included a Roadside Assist demonstration that was created during the PowerApps & CDS Hackathon Those Dynamics Guys and Hitachi Solutions Europe hosted together.

My second presentation consisted some of the “Do’s and Don’ts” around building your first Canvas App with your customer. I followed the presentation with the following:

  1. Adding several fields to a custom entity in the Common Data Service (CDS)
  2. Importing some data
  3. Creating a new canvas app
  4. Connecting the Canvas app to the CDS
  5. Adding in the Azure translation service to the app
  6. Publishing the app

The actual canvas app I created with the little model driven app solution, including data is available HERE.

The below pic gives of the impression that I am about to start having a conversation with my own hand, like an invisible Muppet. May be a great trick for my next demo 😀

One of the BEST sessions that I have been in was the “CAGE MATCH” moderated by the one and only Julie Yack,  This was EPIC fun! We were split into teams of 5 and given problems by the audience to resolve. It was a little daunting being in the presence of some of these long time MVPs, BUT, THE SHOW MUST GO ON, so we got stuck right in. Unfortunately, the team I was in didn’t take the win 🙁 Its cool, I am preparing my battle cards for the next one!

All in All, it was a fantastic event and a great opportunity to network with this amazing Dynamics and power Platform community that we all have grown to know and learn from. A MASSIVE thank you to the sponsors of the event!

Also, a big thanks to all of the folks that hung out after the event and enjoyed several beverages with me. Was a great time and I’d love to do it again 🙂

Here are some more delightful images from the day 🙂 My camera skills aren’t great so i had to grab a few from social. Thanks to those that grabbed pics in my session! I hope that this encourages more people to attend these events because I genuinely gain so much from being there.

Nick Doelman Smashing his Portals Presentation
One of my favourite Finns – Antti
Julie Yack doing her presentation on Social Engagement
MORE of the awesome Julie Yack
WHAT?? ANOTHER ONE of my favourite Finns – KIMMO!
We were all so excited! mark, Jonas and me 🙂



Where does CE PSA fit if I have Finance and Operations?

Updated last: 23/12/2018

This is a live blog post that will be updated with changes that are applied to the application – I’ll also update it with input from the community too. 

Right, I thought it’d be best to write a quick post on this topic as it is a question I receive quite regularly which is along the lines of…. “Hey Will, I see you’ve been working on Customer Engagement PSA – I don’t really understands how that would fit in with an organisation that has Finance and Operations system or at all”.  Then I take a deep breath and I say something along these lines…

(There are a few version of this response depending on what the business does)

PSA flow:

What we must remember is PSA is there to ultimately help the prospect to cash process, but hey we hear and read “Prospect to Cash” thrown around a lot and it doesn’t help explain anything, what I mean with this is as follows;

  1. the ability to turn someone you may have been in contact with to a Lead
  2. then qualify said Lead to an Opportunity
    1. During the opportunity process you will start, hopefully, creating a proposal and to really provide a precise as can be quote it is best to create a project with a thorough work break-down structure along with associated costs (expenses, role costs etc.) then to import this structure along with associated costs into the contract to provide a quote.
  3. Submit the quote to the customer and hopefully mark it as won – or maybe you may have to create another until you ultimately, hopefully, win
  4. The quote then turns into an Order/Contract with an associated project and all this richness can then be synced across to Finance and Operations – the contract will be pulled across along with the associated project details; project name, project contract associated, actual start date, work breakdown structure (if you’ve assigned resources then these can be brought across too) etc.

Where to place your personnel in a PSA & FinOps stack implementation:

Now the more interesting piece is where do you ask your employees to enter their Time and Expenses, where do you ask the Project Manager to carry out their tasks and where do you ask the Resourcing Manager to sit?

Now we must remember PSA – IS NOT A FINANCE SYSTEM, IT IS NOT TRYING TO BE A FINANCE SYSTEM, IT’S PURPOSE IS NOT TO DEAL WITH ANYTHING RELATED TO ACCOUNTING AND FINANCE, the purpose is to provide a buffer between account management and back office tasks such as the accounts department and to provide more granularity to items such as quoting (remember this is from a perspective when Finance & Operations exists as part of the implementation).

However, what it does do well is to provide the ability to price up quotes thoroughly thanks to this project creation functionality and it also performs some project processes well that can then be handed over for further processing.

Now let’s take a quick dive into where to place the Project Managers, Employees and Resourcing Managers.

Employees– now, personally, as an employee I prefer the user interface in CE  for entering Timesheets and Expenses rather than Finance and Operations – it is more aesthetically pleasing. However, there are limitations around expenses – there are no expense policies out of the box so this would need to be provided via customisation.

Along with other workflow requirements, and let’s face it expense workflows (from my experience implementing systems, especially in global systems) can be incredibly complex which will also be better suited for Finance and Operations as PSA only allows one level approval when in reality multi-level and conditions are required.

PSA does have the ability to bring in the hours you entered last week, or the appointments/projects you’ve been assigned in the resource scheduler but Finance and Operations allows this too.

What I’m getting at here is it is best to stick with Finance and Operations and if you wish to make the user interface more kinder on the eyes then use the mobile application functionality or throw together a PowerApp.

Resourcing Manager– now this is where I lean towards PSA, as long as you sync proficiency models, skills, characteristics, roles, cost prices, sales prices etc. between Finance and Operations and CE PSA (or if you’re company is using talent then have a network of the three Talent>PSA>FinOps) then I much prefer the Scheduling board within PSA and the way you submit requests to be fulfilled. Look at the screenshot below and how glorious it is, colours, pictures, charts – PSA has it all (you can even use the map functionality- living the dream)!

Project Manager– now this depends on the organisation, PSA allows the PM to manage their project team, monitor cost absorption (effort tracking as well), look at project estimates, submit resourcing requests (all this also exists within Finance and Operations)- but if you want your PM to also invoice clients, perform a more advanced level of WIP adjustments then this role will suit Finance and Operations.

Also the dashboards are not that brilliant in PSA – yes you can use PowerBI embedded functionality but Finance and Operations has brilliant out of the box reports, as well as enhanced areas such as the Project Manager Workspace (provides an overview of their project related activities as well as allows them to initiate their most frequent tasks) as well as PowerBI integration – soooooo…..

General Finance points related to PSA functionality: PSA does let you push through flexible journals, you can export actuals (or integrate them), you can adjust actuals (as well as few adjustment histories) and you can invoice through funding sources and billing rules (not as advanced as Finance and Operations) set out on the project contract.

Important to note that there is no out of the box functionality to tie Purchase Orders to projects, thus this is not wrapped up and summed into items such as const consumption etc. a journal can be used for this in the mean time but creating the PO in FinOps and then pushing that across as a journal to keep track in PSA may be one route (dependant on if your PMs sit there if not it really does not matter). Furthermore to this there is no commitment or encumbrance accounting to keep track of the financial health of a project with regards to Purchase Orders.

Another key part of project management is budget control. Unfortunately there is no budget control that sits within PSA only a cost consumption meter so this will have to be validated/tracked through Finance & Operations but the validation will only occur post transaction if you choose to leave T&E within PSA (not a wise move).


So let’s conclude – PSA DOES HAVE A FIT within the full suite of Dynamics 365 and for organisations that uses both CE and Finance and Operations if it is used for it’s intended purpose which in my eyes is to assist with quoting proposals and assisting with some of the non-accounting project processes to allow that smooth transition from sales to delivery.

And one more thing….. if the company DOES NOT have finance and operations but another Accounting system that does not include project management and they also require a sales system then PSA is a great fit!!!!


PSA – Journals

Did you know PSA has journal functionality – this allows for a flexible approach to applying and pushing costs to your projects. You may ask “Will, you sound excited about this but why will I need Journals I use Time and Expenses to push through to Actuals which then show on the various tracking screens etc.”

Well the great thing about Journals is they are flexible and out of the box when you open up a journal you get the following transaction types and form:

Along with the following Transaction Class:

Now these really are just categorisations to aid with reporting etc. but if we look beyond these types and classes into uses for journals within PSA:

1. Sub-Contractors Time and Expenses – use the cost type and time class and then by selecting the project and task along with bookable resource you will be able to apply time and expense costs back to the project without allowing your Sub-Contractors access to the environment itself which helps reduce cost and sometime Sub-Contractors will not like access to your systems to show that they are separate from the company.

2. Processing/Applying Cost from Purchase Orders – it is possible to expose costs to your Project from Purchase Orders by selecting a transaction type of Cost with a transaction class of Material, you can then select the project and tasks the Purchase Order applies to as well as the quantity and cost.


3. Reversals – For those who are reading this that understand Dynamics 365 Finance and Operations you may be pondering “hmmm… I wonder if you can use these for reversals like we do in F n O” the answer is absolutely!!!! Just throw in a negative value for whatever it is you wish to reverse and voila it’s achieved for example, for a certain resources timesheet just punch in the project and task it belongs too along with the bookable resources name who’s timesheet you need to reverse and post it. This will then filter through and reverse the tracking items such as effort and cost :-).

Furthermore, use the journals to apply tax is incurred, commission that may need to be processed through as a cost towards the project and much more!

Can’t Associate Existing Contacts to an Account in the D365 UCI? – WHERE IS THE DAMN BUTTON??

Don’t feel like the emotional post? 😀 😀 FIND THE SOLUTION HERE!!

Recently I was doing some config. within Dynamics 365 for a customer that was keen on using the UCI (Unified Client Interface).  I’ve done a load of demo’s for this type of thing but never actually helped configure for a live implementation. To be deadly honest, I had to change my mindset a bit about how I designed things.

After a few hours of build i ended up setting up a little training solution that allowed users the ability to associate existing contacts to an account. A pretty straight forward N:N relationship on the account form showing the associated contacts that had been trained and the internal users that had actually done the training.

I was happy with the setup but when it came down to testing, something weird happened… There was no button available on the sub grid that allowed me to associate an existing record. The Add Existing User button was there, but no “Add Existing Contact” button 🙁 

I checked if it was working in the Web refresh… Lo and behold, i could work just fine! No issues with adding existing contacts to an account. 

I tested out different views and still no luck I even tried a 1:N relationship to Contact and it only allowed me to create a NEW contact rather than add an existing one. 

After a bit of searching… I found the one solution that worked! THANK YOU to the Joel THE TIP OF THE DAY team for this post! you saved me a TON of time. This could have been a rabbit hole. Also Scott, your Ribbon Workbench comes to the rescue again! Legends!


Dynamics 365 Project Service Automation: Two approaches to implementing PSA

Dynamics 365 Project Service Automation differs between organizations and partners. This includes the reasons behind implementing it, the way it is approached and even the way it is implemented. PSA (and Field Service) are both applications that can be used out-of-the-box by simply going through all the required settings and parameters. Usually a PSA project does include some customization just like any D365 CE project but with PSA one thing is a little different: The logic in which the application works is not to be changed and when customizing or writing code, the functionalities and the “PSA process” of the application should only be extended. Not changed. This way you will have a working application as new functionalities are released.

The hardest app to master

While the Sales and Customer Service applications are straightforward, PSA and Field Service have a lot more to them. I’m not getting into Fields Service in more detail on this blog post because that really is a story of its own. Let’s focus on PSA for now. In reference to Steve Mordue’s fantastic blog post, what is simple for me might be hard for you and vice versa. Steve brought up our mothers but I’m not going that way – let’s say we focus on millennials. No matter how we quantify simple, I still want to argue PSA still is the hardest application to master in the D365 CE stack. I’m black and white in that sense.

What does “the hardest” app really mean? In short it means the “PSA process” from prospect to cash and understanding what bits and pieces we must consider when executing the process. From a business perspective, an additional factor is that you really can’t easily force PSA to your business’ processes as the way we use PSA is fixed – hence the name the “PSA process”. You might be thinking “But we have Business Process Flows in D365 CE…”. That’s a nice thought but that’s not what I mean. I mean the overall high level process of how you go from prospect to cash in PSA and what you must do in the application to get it to function properly. It’s a ready-made app so when you think about it, it should make sense, or…?

Two approaches to implementing PSA

I’m going to boldly state there are two approaches to PSA when we use its core functionalities and don’t extend it. We can take the app to the moon and back by building around it like the awesome Chris Huntingford demonstrated during the D365 UG Virtual Summer Camp on his RAID logs presentation. Extending is not the point of this blog post though. Let’s keep our focus on the app as it is OOTB.

Implementing PSA as whole (as in leveraging all it has) in an organization is a big effort. This is the case especially when an organization is new to D365 CE and has no experience with the product. If the whole “PSA process” is too much, what options do we have? How do we start with what we really need from a business requirements point of view and then pick up the “nice to have” later? For this we have two approaches.

1. The Financial container

One of the two approaches to PSA is the financial aspect. The “financial container” is essentially your Project Contract and everything that happens around it. It’s a container for all your financial data. When approaching PSA from a financial perspective we want to get financial data out of PSA and then push it to an ERP like Finance & Operations or Business Central for invoicing.

With the financial approach, we look more closely at the opportunity to invoice process without putting too much effort on the project management and resourcing side of PSA. Projects will be there because naturally it’s a prerequisite to getting our financial data but the focus is not on projects per se. You’re probably asking for some concrete examples by now so let me try to dive deeper into the financial container.

The financial approach is around the Project Contract and how that is set up. We have our Time & Material and/or Fixed Price Order Lines to define what our contract and the project(s) related to it are like. Our staff submits Time and Expense Entries so that we will get the necessary Actuals that we will then invoice. We focus on the profitability of our contract and its performance. The “financial container” is business critical as it produces our financial data.

The financial side of things is usually taken quite seriously in an organization (gee I wonder why this is…). When it comes to implementing the “financial container” we have a lot of ground to cover in PSA and there is quite a bit to learn. As this approach is something an organization really must master perfectly, there might not be a lot of steam left to cover the other container described in the next paragraph until everyone has had a bit of time to digest what was just implemented.

2. The Project container

The “project container” is essentially a container for work. It holds the concepts of project management, project work breakdown structure and resourcing. With a focus around projects and work, an organization wants to focus on managing and running projects and assigning the right people on the right tasks at the right time. In PSA, we can plan and execute projects without needing to focus on the financial side of things.

When we dive deeper into the project container we look at very granular project planning and granular task specific resourcing. Version 3 of PSA has decreased the overhead in resourcing significantly by separating resource bookings and assignments on tasks. Resourcing is nevertheless a pretty intensive task for an organization and the functionalities around resourcing take quite a bit of learning to really master. If you really want to make resourcing in PSA effective, you need to know it well and be consistent in resourcing your staff.

There are naturally bits and pieces like resource roles and project work breakdowns in this container that we also need to take into consideration on the financial side. The granular resourcing and planning are where the contents of this container get heavy to handle so implementing that granularity and the aspects around project management and work are something that you may want to implement either before or after the “financial container”.


The approach to PSA doesn’t have to be everything or nothing. Your organization can split a PSA implementation into two containers: A financial container around Project Contracts and a project container around work, projects and resourcing. Your business requirements naturally drive your implementation. In any case I want to say use a partner in your PSA implementation. And not just any partner but one that really knows what PSA is and how it works.

All my posts reflect my personal opinions and findings unless otherwise stated.


I have recently embarked on a wild journey that is learning Customer Engagement for those who know me I am predominantly a Finance and Operations consultant – but PSA aroused my curiosity so I thought i’d take a dive head first into it. Here you’ll see videos I upload as I go through this adventure!

Project Overview:


Resource management:

Skills for the PowerApp developer

It seems to me that PowerApps will prove to be a game-changer by enabling businesses and organisations to build bespoke apps designed to meet very specific needs.

The curious thing about PowerApps is that the product is pretty well where it needs to be as of today but the major blocker for a global revolution is that there simply aren’t enough people out there with anything like the skills that they would need to be able to build robust business product.

So let’s assume that you can’t buy in PowerApps skills or maybe that you have some but need to grow some more.  What would you be looking for in an individual to identify them as a potential PowerApps developer?  In this article I’m going to outline some of the skills that I would be looking for when identifying candidates with the potential to be high performers.


It feels kind of strange to start with a product rather than personal skills but in this case the Excel formula structure and Excel cell construction is so closely related to that of PowerApps that is the number 1 skill.

The Excel and PowerApps teams work closely together so that any new formulas created are aligned to each other.  With this in mind this also opens the door to the many years of formulas created by individuals within excel that can theoretically be borrowed or referenced to enhance a PowerApp.


PowerApps is the product that is the most mathematical that I’ve ever seen.  Variables can be easily created that can be used in an algebraic fashion.  X and Y properties exist to govern the position of everything that you see on a screen.


You need to be able to consider your products from the perspective of other users.  If people don’t like your product they won’t use it, and you should be aiming for them to love them.


To my mind there are 2 kinds of logic.  Firstly, the more mathematical/excel based ‘If X=1 to this otherwise do that’ and secondly there is the type of logic where you put yourself in the shoes of a user or administrator and be able to see whether or not a form (as in business world this is the most likely application) has a logical flow.


Having an eye for design is a skill people have to a greater or lesser extent.  To be fair it doesn’t come naturally to me, but I do know that from making lots of products some designs work better than others and it is a skill that can be learned.


PowerApps won’t go to you, you have to go to PowerApps.  If you create a blank app it will stay blank until you do something.  Additionally, many technical solutions may require techniques that feel like work-arounds mainly because the problems you have been facing haven’t been faced before, so looking them up on Google won’t necessarily yield any results.

Lifelong Learning

The product is ready, but is changing all the time.  Good sources for keeping up to date are twitter and the PowerApps blog, but even the latter tend to focus on ‘big’ updates whereas some of smaller adjustments can still be game changers.  Keep up with it.  I’ll be honest in saying that there are times when staying at the cutting edge can be difficult to manage versus traditional tools and skills that stay very similar over long periods of time.


Some problems will require high levels of determination to find the exact syntax you need to solve your problem and when those fail you may need to pull back stick your head up and work out if there ways around the problem or if the items is even needed (i.e. do you really need to collect the data at all or is it a nice to have)


Not necessarily my forte, but patience may be required of yourself as you may not have the skills that you need at your fingertips and similarly the same may be true of those around you.  You’ll also need a level of patience on the part of your sponsors or users.  I can almost guarantee that unless they are very familiar with digital form building you may produce a product to the exact specification requested but nevertheless you, and they, know that it’s not quite right and that adjustments, sometimes significant may be required.

Use the community

The PowerApps community at this stage is currently populate by a relatively small but passionate group of individuals building highly imaginative solutions designed to stretch the product.  Make use of these by joining https://powerusers.microsoft.com, follow people on twitter posting using the #powerapps or @PowerApps references.  By all means take a look at my youtube channel www.youtube.com/dataspinners and don’t forget to join https://dynamics365society.uk which contains a PowerApps bank that you can make use of once you sign up (for free).

Go on a course

Personally, I’m quite happy with an online course as typically these are completed over a longer period of time which for me is a better way of allowing the learning to sink in.  The best single free resource is https://courses.edx.org where DAT207x is a very useful starting point.  You can search up courses run in a classroom setting, but you will need to ensure that you invest time in utilitizing the product one you’ve completed it as otherwise you’ll lose your knowledge quite quickly.

Concluding remarks

This article was intended for hirers or individuals trying to make some sense as to the range skills needed for PowerApps excellence.  Hopefully, it isn’t too daunting.  Whatever you do, start small but build usable solutions.  This particular tool offers us astonishing scope for us to run our businesses in efficient ways and the more we can grow as a community the closer we will all get to a culture of efficiency the impact of which may be widespread, more operations, better scheduling less wastage all by putting the right information in front of the right people at the right time.