The whole COGS system in RMS does not make sense. The fact that the COGS is permanently recorded in the database at the time of the sale does not take into account timing issues that occur in the normal course of business.
For example, quite frequently I am unable to receive and commit items to the database the second they physically arrive (either due to time constraints or because I have not received the invoice from the supplier or know all of my costs yet, so I do not know the exact cost value yet). However, if it is physically in stock, I want to sell it if a customer asks, even if the database quantity it zero. Especially in the case of new items where the item cost is zero until received and committed, if I sell it, the COGS is recorded as zero (100% profit margin).
There should be an as-of date/time for commiting POs and transfer to the database. The system should go back and correct COGS numbers for items that were sold after the as-of time.
This problem also throws off the weighted average calculation at the time of receiving if you have sold items that have not been committed.
Every month I have a huge accounting adjustment to COGS to account for these problems. The COGS and profit numbers that come out of RMS are completely useless.