The item last evaluated cost is only update after running the Inventory Audit or Inventory Valuation Report.
You can test with below SQL script, with assumption the item is setup with Weighted Average inventory costing.
SELECT
OITM.ItemCode,
OITM.[LastPurPrc], OITM.[LstEvlPric] ,
OITW.WhsCode,
OITW.AvgPrice,
OITW.OnHand,
OITW.StockValue,
Convert(Numeric(19,2), OITW.StockValue/OITW.OnHand) AS Calculated_AvgCost
FROM
OITM
INNER JOIN OITW ON OITW.ItemCode = OITM.ItemCode
WHERE
OITM.ItemCode IN ('TEST007','TEST01')
AND WhsCode= '01'
ItemCode | LastPurPrc | LstEvlPric | WhsCode | AvgPrice | OnHand | StockValue | Calculated_AvgCost |
TEST007 | 150 | 125 | 1 | 110 | 3 | 330 | 110 |
TEST01 | 100 | 100 | 1 | 100 | 10 | 1000 | 100 |
Note:
- The Item LastPurPrc is updated when an AP invoice is added
- The Item LstEvlPric is a system calculated cost, that is only update after Goods Receipt and running the Inventory Audit/Valuation Report.
- The Warehouse AvgPrice is updated after Goods Receipts is added
- Option to recalculated the average cost by using the total value / on hand quantity.
For FIFO inventory costing, the Last Evaluated price will be based on the earliest Goods Receipt of the remaining on hand quantity. The LstEvlPric will only update after running the Inventory Audit/Valuation Report.