Data import
Opening stock
Stone, lot, physical dimensions, K1/K2 store root, quantity and inventory cost. Zone and rack must remain blank until the lower location hierarchy is approved. Stock codes and labels are generated after a valid load.
Physical stock count
Slab or off-cut code, counted quantity, physical status and location confirmation. This import reconciles the stock register.
Recent inventory imports
| When | Import | File | Rows | Loaded | Failed | By | |
|---|---|---|---|---|---|---|---|
| 11/08/2026 2:20pm | Opening stock | stock-store-root-only.xlsx | 118 | 116 | 2 | Dung Vu | Re-import |
| 10/08/2026 9:05am | Physical count | stock-store-root-only.xlsx | 168 | 168 | 0 | Dung Vu | Complete |
Stock import template
Blank schema contractRequired columns, in order:
slab_identifier, stone_type, lot, length_mm, width_mm, thickness_mm, store, zone, rack, landed_cost
Location hierarchy validation: store accepts K1 or K2 only; zone and rack must be blank. Any other location value rejects the row.
The template contains headings and validation guidance only—no business rows, prices, health data or outbound register content. Upload validation produces a preview before any commit.
State variants
- empty — inherits list-empty
- loading — inherits list-loading
- access denied — inherits list-access-denied
- validation error — inherits list-validation-error
These are displays of THIS screen, not new screens. Each inherits the list archetype exemplar, which is drawn once and carries the words the built screen shows.