Events
Power BI DataViz World Championships
Feb 14, 4 PM - Mar 31, 4 PM
With 4 chances to enter, you could win a conference package and make it to the LIVE Grand Finale in Las Vegas
Learn moreThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Applies To: Project Operations for resource/non-stocked based scenarios
This article provides information about Project Operations dual-write integration for project estimates and actuals.
Project labor, expense, and material estimates are created and maintained in Microsoft Dataverse and synchronized to finance and operations apps for accounting purposes. Create, update, and delete operations aren't supported through the finance and operations apps.
Creating estimates requires a valid accounting configuration for the project. Projects that are associated with contract lines must have a valid project cost and revenue profile defined in the Project cost and revenue profile rules. For more information, see Configure accounting for billable projects.
Labor estimates are created by the Project Manager or Resource manager who also assigns a generic or named resource to the project task. Resource assignment records can be reviewed on the Resource Assignments tab on the Project Details page in Dataverse. Resource assignment records in Dataverse create hour forecast records in finance and operations apps using Project Operations integration entity for hour estimates (msdyn_resourceassignments).
Dual-write synchronizes resource assignment records to the staging table (ProjCDSEstimateHoursImport), and then uses business logic to create and update hour forecast records (ProjForecastEmpl).
The Project accountant reviews forecast hour records created in finance and operations apps by going to Project management and accounting > All projects > Plan > Hour forecasts.
Expense estimates are created by the Project manager on the Expense Estimates tab on the Project Details page in Dataverse. Expense estimate records are stored in the Estimate Line entity in Dataverse. These estimate records have transaction class, Expense and are synchronized to expense forecast records in finance and operations apps using Project Operations integration entity for expense estimates (msdyn_estimatelines).
Dual-write synchronizes expense estimate records to the staging table, ProjCDSEstimateExpenseImport) and then uses business logic to create and update expense forecast records (ProjForecastCost). Estimate lines store sales estimate and cost estimate records separately. The business logic in finance and operations apps populates a single Expense forecast record using this detail in the staging table.
The Project accountant can review expense forecast records in finance and operations apps by going to Project management and accounting > All projects > Plan > Expense forecasts.
Material estimates are created by the Project manager on the Material Estimates tab on the Project Details page in Dataverse. Material estimate records are stored in the Estimate Line entity in Dataverse. These estimate records have the transaction class, Material and are synchronized to item forecast records in finance and operations apps using Project integration table for material estimates (msdyn_estimatelines).
Dual-write synchronizes material estimate records to the staging table ProjForecastSalesImpor, and then uses business logic to create and update item forecast records (ForecastSales). Estimate lines store sales estimate and cost estimate records separately. The business logic in finance and operations apps populates a single Item forecast record using this detail in the staging table.
The Project accountant can review item forecast records in finance and operations apps by going to Project management and accounting > All projects > Plan > Item forecasts.
Project actuals are created in Dataverse, based on time, expense, material, and billing activity. All operational attributes of these transactions including quantity, cost price, sales price, and project are captured in this Dataverse entity. For more information, see Actuals. Actual records are synchronized to finance and operations apps using the dual-write table map Project Operations integration actuals (msdyn_actuals) for downstream accounting.
The Project Operations integration actuals table map synchronizes all the records from the Actuals entity in Dataverse, with the attribute Skip Sync (internal use only) set to False. This attribute value is set in Dataverse automatically when the record is created. Examples where this attribute is set to True are:
The dual-write table map synchronizes the actuals records to the staging table, ProjCDSActualsImport. These records are processed by the periodic process Import from staging table when creating Project Operations integration journal lines and project invoice proposal lines. For more information, see Integration journal in Project Operations.
Dataverse also captures the links between the project actual transactions in the Transaction connection entity. For more information, see Link actuals to original records. Links between actual transactions are also synchronized to finance and operations apps using the dual-write table map, Integration entity for project transaction relationships (msdyn_transactionconnections). These records are used by the periodic process, Import from staging table when creating Project Operations integration journal lines and Project invoice proposal lines.
Posting a Project Operations integration journal and a project invoice proposal triggers an update in respective records in the staging table, ProjCDSActualsImport. The system captures and records the following accounting attributes for actuals transactions:
The Project Operations integration actuals table map updates respective actuals records in Dataverse with this information.
Events
Power BI DataViz World Championships
Feb 14, 4 PM - Mar 31, 4 PM
With 4 chances to enter, you could win a conference package and make it to the LIVE Grand Finale in Las Vegas
Learn moreTraining
Module
Set up dual-write in finance and operations apps - Training
Learn how to integrate Dataverse and finance and operations apps using dual-write in Microsoft Dynamics 365.
Certification
Microsoft Certified: Dynamics 365: Finance and Operations Apps Developer Associate - Certifications
Implement and extend finance and operation apps in Microsoft Dynamics 365.