Why post a document across multiple registers
Up to this point you only considered the changes of material quantities within Jack of All Trades. You have created the BalanceOfMaterials accumulation register for material quantity accounting.
However, as you have probably guessed, this type of accounting alone will hardly meet the needs of your company. Clearly, you also need to know what monetary resources were expended to purchase the materials and what the company’s material reserves are worth in cash.
Once you started automating your company, the Jack of All Trades management asked you to implement the average cost method for all material balances accounting.
In other words, when materials are acquired, they are accounted for in terms of purchase prices, while when expended they are accounted for at an average cost, which is calculated based on the aggregate purchase of a given material and the total material quantity available in Jack of All Trades.
Since this data structure is absolutely different from the data structure used in material quantity accounting, you will use a new accumulation register named CostOfMaterials, which will store data regarding the overall cost of the materials available in the company.
So, in order to reflect the balance changes, the GoodsReceipt and Services documents should create records simultaneously in the BalanceOfMaterials register and in the CostOfMaterials register.