2001 Average cost by location
Previous  Top  Next

The way that average cost in the system has changed in a fundamental way to solve various internal costing problems that can otherwise occur. All users that have inventoriable items, should update to the latest version for this change alone.

Advanced Accounting still uses the moving average cost method to determine average costing. However the cost is not kept at the location, rather at the inventory master level. This allows users to better track costing by location and keeps costing changes at one location from impacting another. It further allows the moving average cost to be kept in a more consistent way and which in the GL is supported by an inventory listing when the GL asset account is different between two or more locations for the same product code. Potential inventory master locking issues on multi-user systems is also greatly reduced as a side benefit of this change.

"Blended average cost" (which is equivalent to the number that the system previously updated in the inventory master file) is now always calculated on the fly as is total inventory value. (Users who may be accessing the old BKIC.PROD.AVGC and BKIC.PROD.TOTVL fields via Crystal or User defined reports will need to understand this and make appropriate changes - the fields will still exist, i.e. they are not being removed from the file but the system no longer uses them as permanent storage fields.)

Overall cost information with a location breakdown can be viewed (assuming that a user has not been restricted from seeing it) in IC-A by either using the new CTRL-K Cost Info option or via the PgDn (last two columns in the location and/or press ENTER on a location). The CTRL-K option will provide the computed blended average cost and value as well as the last cost followed by the each location's average cost, last cost and units. The ALT-I option will similarly compute the blended average cost and value with a display similar in the past.

A special utility is run in the installation to move average and last cost in the inventory master file to the new fields in the inventory location file.

Developer notes:

Average Cost by Location: average cost and last cost are now tracked on a location basis
      (new fields BKIC.LOC.AVGC and BKIC.LOC.LSTC)
      UOH, UOSO, UOO, and UBO fields are no longer updated in BKICMSTR- units are
      automatically synchronized with the locations' units

Program Modifications
LISTG50.lib: removed average cost and last cost from the inventory look-ups; every
         time the inventory look-up is displayed, the units are synchronized with the
         locations' units (new function synch_icmstr in ADDSUM.lib)
       IC-A: removed average cost and last cost from main screen; added average cost and
         last cost to locations list; ^K Cost Info option to view a quick list of each
         location's average cost and last cost
       IC-D: added location total value to report
       IC-G: revised and rewritten for average cost by location
       ALT-I: display each location's average cost and last cost
          PO-D: several changes to update average cost and last cost by location
          SO-A: use location's average cost when checking if item is being sold below cost
          SO-F: use location's average cost when computing COGS
          SO-G: use location's average cost when computing COGS
          BOM module - changes almost all programs for reasons similar to the above
          POS-E: changes similar to SO-G
       Clear Data: updated for fields BKIC.LOC.AVGC and BKIC.LOC.LSTC

Programs Re-compiled Only (note: some of these programs were modified only to include
          an open into BKICLOC so that the units in the inventory look-up can be synchronized):                Inventory Movements Report, IC-B, IC-C, IC-E, IC-F, IC-H, IC-I, IC-J,
            IC-K, PO-A, PO-C, PO-E, SO-B, SO-D, SO-E, SO-I, SO-K, BOM-A, BOM-B,
            BOM-C, BOM-D, BOM-E, BOM-G, POS-A, POS-B, POS-G, POS-J
(there may have been a few others since this documentation was originally prepared)