Overview
This was one of the topics that came up frequently while working with users at the last NAV/BC User Group Summit at Phoenix.
Many people have different opinion to setup their inventory so costing is done properly. Naturally, knowing a few things on how Dynamics 365 Business Central (aka Dynamics NAV) inventory and how inventory costing works, I participated as much of these inventory costing discussions as I could.
One of the features that I always get in an intense discussion on is how the Automatic Cost Adjustment on the Inventory Setup should be done.
Arguments for Setting Automatic Cost Adjustment to Always
I do understand the desire to want to set this property to Always. And why not? Instead of running the Adjust Cost – Item Entries manually, why not let the system run the process every time? And I do mean Every. Single. Time.
Setting the Automatic Cost Adjustment to Always allows for you to have updated and accurate cost at all times. This sounds great!
Arguments Against setting the Automatic Cost Adjustment
It’s great if we can just talk about all the benefits and call it a day. But that’s now we work. Setting this property will come at a cost.
- Performance – During posting, your users will experience delays. How significant this is will depend on how large your database is.
- Locking issues – Dynamics Business Central will lock the ledger entry tables during posting of orders. In addition, it will lock tables when it runs the adjust cost process. Because of the stress on the performance above, the users will experience more locking problems throughout the day as people are posting. If you’re experiencing this now, try setting the Automatic Cost Adjustment to Never.
- Allow Posting From Error – There are some instances where the adjust cost will want to post adjustments into prior periods. Depending on what you setup for your Allow Posting From on the General Ledger Setup and/or on the User Setup, you’ll run into these errors.
If you’re running a micro business with few inventory transactions, setting it to Always will make sense.
However, for a manufacturer or a high transactional volume distributor, you will cause more harm to your environment than not.
This is exponentiated if you’re using reservation or serial/lot tracking.
The Alternative
Instead of running the Adjust Cost – Item Entries process during every single transaction posting. Why not have the process run during off hours?
One of the first things we do for our client after explaining the importance of Adjust Cost – Item Entries is to setup the adjust cost process as job queue to be ran at night when the load on the system is light.
This will prevent locking up users as well as give the system a faster response when they’re doing their daily task. Who doesn’t want a system that’s responsive and allow you to do as much as possible within a shorter amount of time?
Conclusion
In every instance, I will set the Adjust Cost process to be ran automatically on the job queue. I want to give the user the best possible experience working with the system. Every delay causes frustration and we can all use less frustration in our lives.