Incorrectly configured parts of code are certainly bothersome to customers trying to get the most out of finance and operations applications, especially true regarding Microsoft Dynamics 365 users. They cause great variety of problems, most notably performance drops during daily Dynamics 365 process execution, when handling large amounts of data without proper previous configuration. Since number sequences are mostly configured to facilitate everyday usage, they are often subject to contention. In this article, we will look at ways to determine if number sequences are causing performance drops and what can be done to remedy particular problems.
One way to make sure certain code strings are causing trouble is using Lifecycle Services or Query Store and looking at most resource-intensive queries. The following query (and for that matter, all code in this article) was provided by Steven Koppins, Solution Architect at Microsoft:
As he writes in personal Dynamics 365 blog, if the above query takes too much time computing, you most likely have configuration issues.Another method to identify bottlenecks is comparing TNC parameters before and after any test run. Usually, internal strings like IDs are ignored and set up without preallocation, which is suboptimal, since internal number sequences are quite demanding of your machine’s resources.
Once you have found the bottleneck, it is important to learn exact numeric series causing it. Launch a Dynamics 365 sandbox, import the problem database and run these SQL statements in AXDB, which will list number sequences based on usage in descending order. Most commonly used patterns are likely causing performance issues.
Non-continuous consumption
Unless non-continuous number sequences are used, there is no chance of optimizing performance. We recommend thinking about your business requirements before using continuous ones. Learn more about their differences by reading official Microsoft Dynamics 365 documentation.A frequent problem is unspecified Quantity of numericals during preallocation. There is no easy ratio, but following table should give you general idea of settings to use.