I have been using the functionality of Allen Browne's Inventory Control and it is all working just fine.
I have simplified it a bit and only using one table (TransactionT) and using a field [TransactionType] for directions (inventory in vs out).
TransactionT also handles stock locations...