Inventory fundamentals
Containers, items, lots, the lifecycle.
Inventory in Dalea tracks everything physical: vials, plates, tubes, frozen aliquots, kits, columns. It is intentionally separate from the data system — your records live in environments, your things live in inventory — but the two connect through references, so a result row can point to "the specific aliquot of anti-IFN-γ used".
Five concepts
- Container type
- A class of physical container — "9×9 cryobox", "PCR rack", "freezer shelf". Defines a position format and metadata.
- Container
- An instance of a container type, in a place. "Cryobox L-204-B12 in freezer L-204".
- Item type
- A class of inventory item — "antibody aliquot", "compound stock", "competent cells". Defines columns (concentration, supplier), units and an SKU pattern.
- Item
- An instance of an item type, with a quantity, an expiration, and (usually) a placement inside a container.
- Lot
- A manufacturing batch. Multiple items can share a lot for full traceability.
The lifecycle
An item flows through these states. Each transition is logged with operator, timestamp and optional notes:
Created → Staged → Placed → Checked-out → Consumed → Discarded
(intake) (labelled, (in a (in use, (depleted) (final)
not yet container) not in
placed) container)
Staged is the period after you receive a shipment but before you've found a home
for it. Checked-out is what makes the item invisible to "what's available" queries
without losing the audit trail.
Container types: why position formats matter
A container type's position format controls how items inside it are addressed:
- None — bare list. "Reagent shelf L-204-A". Items have no positional info.
- Numeric grid — 96-well plates (A1–H12), 9×9 cryoboxes (A1–I9), drawer slots.
- Custom — arbitrary string positions ("rotor slot 3", "carousel cell X14").
Numeric grids let Dalea visualise containers as a heatmap and detect collisions ("you tried to place two items at A3").
SKU patterns
Each item type has an optional SKU pattern, much like data naming schemes:
AB-{lot}-{N}→ AB-24119-001RX-{YYYY}-{N:0000}→ RX-2026-0007
The SKU is what gets printed on the label and read back at consumption time.
Barcodes and labels
Item types can opt into label printing. Dalea generates Code-128 or GS1-DataMatrix barcodes and prints to a configured network printer. On scan, Dalea opens the item's detail page directly — handy for a "scan to use" workflow.
Low-stock alerts
Item types can declare a low-stock threshold and a "watch" set of users. When the total available quantity (across all items of that type) falls below threshold, those users get a notification. Useful for centrally-managed reagents.
Linking to records
Inventory items can be referenced from data records. The reference column on a result row pointing to an item's lot means you can query "show me all results generated from antibody lot 24-119" — invaluable for tracing assay drift.
Receiving and consuming in bulk
Two batched flows exist:
- Receiving session — open one when a shipment arrives, scan or paste in a list,
Dalea creates items in the
Stagedstate in one transaction. - Consumption session — for an experiment that uses many items at once. Open the session, scan items as they go onto the bench, close it when done. Dalea records check-out and quantity decrement against your audit log.