sailing Foudra MRP
Reference chevron_rightmanual/stock

4. Taking on stock, and keeping it true

The ledger

Every change to every quantity is a movement: a part, a location, a signed quantity, a type, when, who. They are never edited and never deleted. A wrong movement is corrected by another, opposite one. The on-hand figures you see everywhere are a cached total of the ledger, and if the two ever disagree the ledger wins and the cache is rebuilt.

This is not bureaucracy. It is what lets you answer, a year from now, "where did those twelve bearings go" — and it is the record-accuracy discipline that MRP depends on, enforced by structure rather than by good intentions.

Opening stock

The clean way: for each part and location, a stocktake movement with what you counted. A stocktake sets the count; the movement it records is whatever gets from the book figure (zero, at the start) to your number. Do it location by location from the move form, or receive quantities in bulk if you are confident of them.

Day to day

You did Record
A delivery arrived against an order Receive goods on the purchase order — not the move form. It receives into stock and closes the line
A delivery arrived with no order Receive on the move form
Took parts for a job with no work order Issue
Moved a box to another shelf Transfer — two linked movements, out and in
Threw something away Scrap
Counted a shelf Stocktake
Found an error you can explain Adjustment, with the reason in the notes

A movement that would take a location below zero is refused. That is a feature: it means the count was already wrong, and the answer is a stocktake, not a negative.

Keeping it true

Count a little, often. Pick a few locations a week — the fast-moving ones more often — and record stocktakes. The movements list shows every correction with who made it, which is both an audit trail and a way to notice a shelf that is always wrong.

Once in a while, run the reconcile (mrp inventory reconcile) to prove the cached totals against the ledger. It should report zero drift; if it ever does not, that is a bug to report, not a number to fix.

Next: buying.