It was back in 2011 when I first noticed that Dynamics AX must have some functionality to do a parallel valuation (e.g. FIFO & LIFO) of a company’s inventory.
My assumption was based on a feature that I saw in the item model group setup window and that allowed selecting a second inventory model group. (Please see the next screenshot that was taken from an AX2012 demo system).
I started to google about this “dual warehouse” feature but could not find much and thus decided to test it with some basic item transactions. The outcome looked very promising but at that time, the functionality was embedded into the Eastern European AX2009 layer and I lacked the knowledge to make this feature generally available.
Earlier this year a friend came up with a question how to do a standard cost and weighted average inventory valuation for an item in parallel. I remembered that functionality and came across the following blog post.
Equipped with an AX2012 demo system and enthusiastic about the possibilities that this feature could offer especially for finance users, I initially tried activating the Russian dual warehouse configuration key, hoping that this key would make the dual warehouse feature generally available in my system.
Yet, after synchronizing my database nothing happened and my item model group window still looked the same as before including only one single inventory model.
I thought ok that would have been too easy and had a look at the available shared projects in my development environment and “bingo” I found a shared project with the term “dual warehousing”.
My next thought was having look at the built in country-region codes and modifying them simply by adding the country-code of the company I was operating in.
This was a bit work but I thought if it does the job it was certainly worth the effort. Yet, unfortunately only some functionalities were available and I permanently got error messages once I tried posting a purchase order, inventory adjustment journal and so on. As I did not want to abandon the field, I continued adjusting all other tables, forms, classes, etc. that were incorporated in the “RU_” shared projects without doing a detailed analysis of the code that I made available for users in my demo country “Germany”.
Finally I got through and recorded the following transactions to test the feature:
After recording all transactions, the on-hand item window showed the following data:
My next step was running the inventory recalculation jobs for my test item.
After those periodic jobs finished, the following adjustments could be identified in the item transaction form:
The inventory value report showed – in line with the identified adjustment – the expected inventory value of 450 EUR.
As no dual warehouse inventory value report is available, such a report still needs development based on the available data to show users the inventory value according to the second inventory model.
Summary & evaluation
The possibility to do a parallel inventory evaluation is very interesting especially in cases where tax authorities require a different inventory model.
Even if no immediate need for a second inventory model exists, the data generated by the dual warehouse feature can be very useful as they offer the possibility tracking inventory values in a different currency that allows e.g. identifying the efficiency of foreign currency hedging instruments.
Despite those advantages, the use of the dual warehouse feature goes along with the following issues:
- Users can only make use of one single additional inventory model,
- No dual warehouse inventory value report exists,
- If the reporting currency differs from the accounting currency a parallel inventory valuation is not possible as currency effects will always distort the outcome,
- The major issue in my opinion is, however, the “development footprint” that the provision of the dual warehouse feature leaves in your system. The next screen-print shows you some (!) of the tables and classes that are affected by the dual warehouse functionality.
As you can grasp from this excerpt, your whole AX system is basically affected by the dual warehouse functionality, which considerably affects your system’s upgradeability.
What is more, if you are not doing a detailed code analysis before making the dual warehouse feature available, you will end up with additional setup windows, form buttons and functionalities that you probably cannot setup without further investigation.
The last constraints lead me to the conclusion that the risks and potential problems of the currently available dual warehouse feature do by far outweigh its potential advantages especially for those of you that are only interested in a second inventory value figure based on a different inventory model. For the last requirement it seems much easier developing another inventory value report based on mathematical-statistical procedures that calculates the second, third … inventory value for you.