To add more information around FIFO costing, it is important to know the "Unit Cost" field on the Item is the calculated Average Cost of your current on-hand Inventory. Your "Last Direct Cost" is the "Unit Cost" from the latest Posted Purchase Invoice.
EX1: If I purchase 1 unit at 10, then purchase another unit at 20, my "Unit Cost" is going to be 15, and my "Last Direct Cost" is going to be 20.
EX2: If I purchase 1 unit at 20, then purchase another unit at 10, my "Unit Cost" is going to be 15, and my "Last Direct Cost" is going to be 10.
In both examples, the "Unit Cost" (hidden field) on the Sales Line is going to be 15 (at first), but after the "Adjust Cost Item Entries" process is run, the system will apply the FIFO cost.
In the first example, the "Unit Cost" of the Sale will adjust down to 10, the "Unit Cost" on the Item will increase, and the "Last Direct Cost" will remain unchanged because we haven't bought more.
In the second example, the "Unit Cost" of the Sale will adjust up to 20, the "Unit Cost" on the Item will decrease, and the "Last Direct Cost" will remain unchanged because we haven't bought more.
Finally, when it is time to buy more, the system is going to set the Purchase Line to the Item's "Last Direct Cost" (assuming no other rules are in place).
Hopefully this helps shed some light on your costing. It is very important to be running your "Adjust Cost Item Entries" process, either automatically or manually, to keep the numbers updated.
Best Regards,
Ben Baxter
Accent Software Inc