Project Service Automation is a fully featured Dynamics 365 application for the management of service based projects and includes features like estimating projects, tracking projects actuals and resource planning. There is not too much documentation available for Project Service Automation so I intent to blog about any nuggets I discover as I start to use it. In this first Project Service Automation post I am going to cover the different types of Project Service Automation price lists and how they are used to populate a project estimates. I will also show you how to discover which Project Service Automation price lists are being used in a projects estimates.
When you create a price list you give it a name, select the type of price list you want to create and select its currency. Once saved you can add the role prices. A sales type price list contains the prices you charge a customer for different resources. A cost price list contains your internal costs for resources.
PSA uses an entity called organizations to model resourcing location based divisions and their resource costs. Typically for organizations with multiple locations and different cost bases you would create an organization for each location and link a number of cost price lists to the organization.
The unit Cost and Sales unit prices for a project are determined as follows. A project gets its Cost sales prices by linking it to an organization as a Contracting Unit. The company the projects is linked to determines the Sales price list (the Project Price Lists).
The entity diagram below show the main entities and relationships with respect to projects and pricing.
The project’s Work Breakdown Structure is where the user enters the project’s tasks and estimated effort.
Once the tasks have been entered for a project its estimated costs can be viewed on the related Project Estimates Form. There is an estimate record for each project task. In the screen shot below I have switched to grid view and selected a sub set of the columns.
There is no indication on the Project Estimates form which Project Service Automation price list was used to populate the Cost and Sales prices. To identity the price list used for estimates you need to query an entity called Estimate Lines where you will discover there are two records for each project task. The Transaction Type field indicates if the record is a sales or cost price estimate.
In the example you can see that the there is no sales price for the Dogsbody role because the price list called Emea Sales List does not have a price for this role. If you add or edit a price list then you need to click the Update Prices options to refresh the estimate prices with the latest price list changes.
Hopefully this post will help you figure how to configure Project Service Automation price lists and where the prices for project come from.