It seems that not every Axapta user/consultant is aware about the powerful debugging tool for cost related issues, introduced in DAX2009. This tool is a Cost Explorer form, which is available from Inventory->Cost Explorer button in any of different Inventory Transactions forms. Basically, this form allows you to trace down to the deepest cost sources of any inventory transaction. The most important difference between this form and the Trace form, available starting from ancient versions of Axapta, is that the Cost Explorer form fetches tracing information from the Inventory Settlement data, while the Trace form just settle issue to receipts on the fly. This makes the Cost Explorer form to be a powerful cost debugging tool, which allows you to deconstruct a cost of any inventory transaction. Say – You open the form for closed inventory transaction for sales order. After expanding the cost sources for this transaction, you see that it cost originated from two receipt transactions – one is a production order and another is a transfer order from a different warehouse. By expanding receipt node for the transfer, you find that this transfer cost is originating in a production order, then that production order’s cost is originating from three purchases and one transfer order, which,in turn, originates from fourth purchase order. So, after considerable number of mouse clicks, You would find all the originating inventory transactions and understand the source for every cent of the cost price of the issue in question. Here is little more details about the form:
1. The form can be called for receipt and issue inventory transactions.
2. For an inventory receipt, the form can show not only transaction data itself, but also all the adjustments made for the receipt. The cost structure engine can even differentiate between kinds of adjustment (On Hand Adjustment/Transaction Adjustment, Rounding during inventory closing, Standard Cost adjustment, Other types of adjustment).
3. For a receipt from production order, even data from route transactions (essentially – non-material part of cost) are displayed.
4. For an inventory transaction, the cost tree node text shows Item No, financial inventory dimension, Item Name, Transaction Type, Order number (like PO’s number, Inventory journal’s Number), Settled Qty from this transaction, cost contribution per settled piece (basically – settledValue/settledQty), Settled Value.
5. For a receipt adjustment, the cost tree node text shows type of adjustment, settled Qty from transaction adjusted,cost contribution per settled piece (basically – adjustmentValue/settledQty), Adjustment Value.
6. The form displays the adjustments made ONLY before the date of the last inventory closing. If you want to analyze ALL the adjustments for given receipt transaction, You should not rely on this info. To analyze all the adjustments – just open the Settlements form for given inventory transaction.
When I am talking about Settled Qty, I mean “Quantity contribution” of this transaction into the top-level transaction, for which the Cost Explorer form has been started. Say – We have a purchase order for 30 pieces of raw material, production order, which consumes all 30 pieces of raw material and produces 6 pieces of finish good and we have sales order, which sells 2 pieces of finish goods. So – If we try to trace the cost structure down from sales order to purchase order, then for settlements from purchase order receipts to production order issues, we would see Settlement Quantity of 10 (despite the fact, that all 30 pieces from receipt has been settled to issues during the last inventory closing). This is because we are analyzing the cost structure from Sales Order, which has sold only 1/3 of finish goods. So – Only 10 pieces of original purchase have contributed into COGS.
It should be mentioned also, that contributed cost value from some receipts can be LESSER then 1 cent (eurocent, kopek, etc). This is perfectly normal. If the cost value of the issue in question is not equal to the total of originating receipts contributions into cost, just try to increase number of decimals on the Setup tab of the form.
Finally, I want to mention, that although this form works perfectly well, it leaves overall impression of a kludge made to quickly fix the problem. The cost data is being gathered through too many sources; Approach for cost structure display is not aligned with cost group and cost breakdown mechanisms introduced in DAX2009.
I hope that in some of the future versions, Axapta would introduce some high level engine for cost structure analysis and manipulation, which would disconnect cost data from all this inventory transactions, inventory settlements, indirect cost transactions, route transactions, markup transactions and so on. It would be a great advantage for the costing process in Axapta.