Balance Adjustments for Products Using Layer-Based Cost Methods (FIFO/LIFO)
A Balance Adjustment transaction is a powerful tool that can update the Quantity on Hand of a product, as well as the Unit Cost of a product, to be whatever the user defines. To learn more about the basic functions of a Balance Adjustment, check out this help article.
In this article, we will go over the specific function of a Balance Adjustment and how it effects products using layer-based cost methods (FIFO/LIFO). Unlike a Lot/Serial controlled product using Actual Cost, where the Balance Adjustment can be related to a specific Lot/Serial number, a Balance Adjustment for a FIFO/LIFO costed product will not be specific to any Cost Layer. Instead, a Balance Adjustment posted for a FIFO/LIFO costed product will collapse all layers with an OnHand value not equal to zero and add those values to a single new Cost Layer.
In the screenshot below, you can see that Product T18 has several open Cost Layers, most with different associated Unit Costs. You can also see that Cost Layer 1910 is inactive as the Received quantity matches the Issued quantity, this is also notated with a check in the X column (note: the inactive layer is only visible because the Include Inactive Layers box is checked.) Finally, with a little help from a calculator, notice that the sum of the Received quantities, minus the sum of the issued quantities equals 620, which is what the current OnHand value of this product is.
The the next screenshot was taken after a Balance Adjustment had been posted for this product. The Quantity was set to be 620, so the total OnHand quantity has not changed. However, now you can see that the Received Quantity matches the Issued Quantity for all of the cost layers listed in the screenshot above, except for layer 377 which was created when the Balance Adjustment was posted. All open Cost Layers from before the Balance Adjustment were collapsed, removing all OnHand values and adding them to a single new Cost Layer. The new Unit Cost is actually an average of all collapsed Cost Layers, but this can be user defined to be whatever Unit Cost desired.