Why You Should Set Automatic Cost Adjustment to Never in Dynamics 365 Business Central

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.

Leave a comment ?

10 Comments.

  1. If the adjust costs runs overnight what will happen to transactions that posted with the potentially incorrect costs? Will they update also?

  2. Regardless of what was posted, it will be adjusted to its correct cost based on whatever is input by the user.

  3. We have problem with production/assembly Items when we use Job Queue.
    There items are not update.

  4. You have to get in contact with your NAV partner so they can take a look on why it doesn’t run.

  5. Have you tried any other method in Dynamics 365 Business Central for Cost Adjustment.

  6. What other methods are you referring to? Running the adjust cost on the job queue at night, in my opinion, is the most effective way of running it.

  7. Arjan de Groot

    I don’t think this setting to Never solves your 3rd argument.
    Also when you run the process via the job queue, the system may want to post the adjustments in a prior period.

  8. This is why the Allow Posting From field on the General Ledger Setup is so important. You need to change this even if you change the Automatic Cost Adjustment to Always because adjust cost process will always back date to the date of the Allow Posting From.

  9. Hi Alex, I agree that the “Allow posting from” is important. It is just not an argument to choose either Never or Always. And if the job queue is carried out by a certain NAS instance you need to be aware of the settings of this “user” in the Setup as well.

    There however is a solution for these prior postings by configuring “Inventory periods” and closing these. If you apply this functionality, the adjustment postings will be carried out on the first date in an open inventory period.

  10. Coincidentally, I wrote another blog article on why you don’t need to use the Inventory Periods functionality in NAV.

    There are a million different ways you can implement NAV/BC for your customers. I prefer to implement them using the simplest way possible. At the end of the day, they need to be responsible for their system. The less steps/potential problems they encounter the better.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.