Multithreaded Execution Of The Calculate Sales Totals Batch Job in Dynamics 365 Finance and Operations

In this blog post, we will learn about a new feature released in D365 Finance and Operations Platform updates 10.0.29 i.e., Multithread capability in the "Calculate sales totals" batch.
Navigation path
Modules -> Sales and marketing -> Periodic tasks -> Calculate sales totals
Background
The business functionality of this batch job was introduced about 3 to 4 years ago in Dynamics 365 FO mainly to bridge the gap in data synchronization between Dynamics 365 Sales & Dynamics 365 Finance and Operations.
In the scenario of Dynamics 365 Cross-apps when Dual-write is installed and all sales orders are created and updated in Dynamics 365 FO and then changes are reflected in Dynamics 365 Customer Engagement app when Calculate Sales Totals is executed in Dynamics 365 FO (Not before).
Basically, the main purpose of this batch job is the calculation and synchronization of monetary value.
Why Multi-thread approach required?
In the real-life business world, the sales department often demands accurate sales order totals displayed, besides the sales order grid.
Originally this batch job was designed to manage the performance issues by having two dedicated tables such as SalesOrderTotals and SalesOrderLineTotals. However, the average throughput of the total amount to be updated which includes invoiced and backorder lines was not great and impacted business users' downstream processes.
This feature helps improve system performance by enabling the system to use parallel processing when calculating sales totals in batches.
How does it work?
The feature adds a new "Number of threads" field to the "Calculate sales totals" dialog. If you choose to run the calculation in batch, you'll also be able to use this field to set the maximum number of threads. A value of zero or one uses a single thread, while values higher than 1 enable multithreading.
Note: This batch job does not change in Dynamics 365 FO Sales order header and Sales order line. The tables i.e., sales and line total tables populated to enable data sync to Dataverse (and CE).
Business benefit
A faster time to initiate downstream processes with correct sync data values across Dynamics 365 Apps.
I hope this article was a good read for you. Do share it with your friends and other peers.
Thank you for Reading - Let's Connect!
Enjoy my blog? For more such awesome blog articles - follow, subscribe and let's connect on LinkedIn , Twitter ,YouTube
Stay tuned!
Published on:
Learn moreRelated posts
Why Microsoft Dynamics 365 Sales is the Ultimate Tool for Sales Pipeline Optimization
Table of Contents Introduction Sales teams don’t struggle to close deals—they struggle to manage everything that comes before the close.…...
Dynamics 365 Sales | Unable to start free trial
While trying to provision a Dynamics 365 Sales free trial using my work account, I was constantly getting this error ‘We are unable to s...
Simplifying License Management for Dynamics 365 Finance and Operations: Improved User License Validation
Starting April 30th, Dynamics 365 administrators will gain access to new license usage reporting tools, centralizing user license management. ...
Dynamics 365 Sales – Find, filter, and sort using natural language with smart grid
We are announcing the find, filter, and sort using natural language with smart grid feature for Dynamics 365 Sales. With this feature users ca...
MWC 2025 Dynamics 365 Sales and Field Service
D365FO Integration: Import Sales Orders from an External Web Application
Learn how to implement robust and efficient process to import complex documents into Dynamics 365 Finance and Operations from external Web ser...
We need to talk about... Dynamics 365 Release Wave 1 for 2025... Dynamics 365 Sales
Next, in my blog series, I discuss the updates we can expect for Sales, Marketing, Customer Service, and Field Service. In today's post,...