Stock

On the floor

Scan a pallet, scan a shelf. Built for an RF gun or a phone — the scanner types and presses Enter, so there is no camera permission and no app to install. Open it once on the device and leave it there.

Open the handheld

How many, and how much is spoken for

On hand is what is physically ours, promised or not. Promised is allocated to a consignment and still on the floor — it has not left, and a picker walking the aisle will find it there. Free is what may still be promised to somebody. The three are summed separately rather than subtracted from one another, so that the day a quarantine shelf exists none of them quietly becomes wrong.

One row per owner, since db/090. A warehouse holds many merchants' goods on the same shelves, and a single line adding two of them together is a number that is true of neither. Osoro (ours) is packaging, pallets and anything this business actually bought.

CodeProductOwnerOn hand PromisedFreeLast movement
Loading…

Where it is

Every account holding a non-zero quantity. An empty shelf is not news and does not appear. The account's first word is its kind, and the database refuses one it does not recognise — a mistyped bins.A1 would otherwise be a location holding real goods that no total counts, and nothing reconciles a warehouse except a person walking it.

CodeOwnerWhereKindQuantity MovementsLast movement
Loading…

What crossed the door

In came from a supplier. Out went to a customer, to damage, or to a counted difference. Damage and shrinkage are accounts with names rather than a smaller number in a bin, which is the whole reason stock is kept as a ledger: five fewer on the shelf is silent, and five at loss.damage is a question somebody can be asked.

CodeDirectionWhere UnitsLast movement
Loading…

What the kinds mean

The first word of every account. Read from the database rather than written into this page, because adding a kind was deliberately made a row and not a migration — consignment stock a merchant owns, goods in transit between hubs, a quarantine cage. Each one that arrives explains itself here without anybody editing this screen.

KindWhat it isOn handCan be promised
Loading…

Expected deliveries

What a merchant told us is coming. Receiving against one is the floor's job — the delivery already says whose goods these are, so nobody needs the merchant list to book them in. What arrived against what was agreed is on every line, and a short delivery stays short in the record after it is closed.

No lines yet. A delivery is what a merchant SAID is coming, line by line — that is what makes a short delivery visible when it arrives.

ReferenceProduct ExpectedHadShort by

Book goods in

Goods arriving from a merchant, onto the dock or straight to a shelf. Ownership is asked rather than assumed — in a third-party warehouse a merchant's goods stay theirs, and the difference between holding them and owning them is the difference between a storage fee and a purchase.

Booking in is intake, not stock, and the reason is the merchant. Naming whose goods these are needs the merchant list, and db/098 deliberately took that off the warehouse floor. A stocker moves what is already here; a dispatcher says what arrived and whose it is.

Batches, and what is going off

A product is tracked by batch only when somebody says so — most goods have no lot number, and a mandatory field would be filled with the date, or 1, for ever. For one that is tracked, a receipt without a lot is refused and picking is first expired, first out with expired stock excluded from what can be promised. Already expired rows stay on this list, at the top, with a negative count: stock that went off in July and is still on a shelf is the row somebody has to act on today.

days
ProductBatchExpires Days leftUnitsWhere

Tracked by batch

Turning tracking on is not retrospective and cannot be: stock already on the shelves has no batch, and guessing which one a carton received in June belonged to would turn a gap into a false record. Anything standing unbatched has to be counted out and booked back in against a lot before it can be picked for that product.

CodeProductBatches Tracked

Move loose goods

Between shelves, or off the dock. Loose only — goods go onto and off a pallet by scanning it, on the handheld, because a typed pallet is a pallet nobody scanned.

Counting is on the handheld, under COUNT. Writing goods off and correcting a recorded act are on Floor.