Dashboard
No data loaded
What stands out
Daily volume by shift
Overnight work is credited to the evening it began.
Hot spots
Where the picking actually concentrated.
Top movers
Highest volume technicians this period.
Technicians
Select a name for individual performance. Batch ratio sits beside every throughput figure because it explains part of it.
All technicians
| Technician | Shift | Tasks | Share | Clock h | Tasks/h | Orders/h | Latency | Batch | Reading |
|---|---|---|---|---|---|---|---|---|---|
| Load a period. | |||||||||
Warehouse floor
Bin codes are aisle.rack.level.position. Drag to rotate, scroll to zoom.
Picks by area
Busiest bins
| Bin | Area | Picks | Materials | Techs |
|---|
Trend across periods
Rates are recomputed from summed counts, never averaged.
Tasks per period
| Period | Tasks | Clock h | Tasks/h | Latency | Batch | Techs |
|---|
Monthly review
Observations
Performance by technician
| Technician | Shift | Tasks | Share | Tasks/h | Orders/h | Latency | Batch |
|---|
Where the work happened
| Area | Picks | Share | Bins used |
|---|
Data quality statement
D099 inventory
A stock export is a photograph. Age runs from goods receipt to the snapshot instant.
What stands out
Age of stock on hand
Click a bar to filter the browser.
Fullest bins
| Bin | Lines | Products |
|---|
Bin wall
Every bin, drawn where it physically sits.
Staging and unstructured locations
Not shelf positions, so they are measured separately.
Aisle summary
| Aisle | Bins | Lines | Products | Avg fill | Over 1 yr | Stale share |
|---|
Stock browser
Search by part, description, bin or handling unit.
| Part | Description | Bin | Qty | Received | Age |
|---|---|---|---|---|---|
| Loading… | |||||
Part history
Movement
What changed between the two most recent snapshots.
Valuation
What the shelf is worth — and how much of it can honestly be priced.
Document library
Every file loaded, kept exactly as it arrived. Deleting one removes every figure derived from it.
Files
| File | Warehouse | Report | Status | Size | Original | Loaded | |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Document
Audit dashboard
What people found on the floor, against what the system claims. Accuracy is reported beside coverage, because accuracy measured over a small slice says nothing about the rest of the warehouse.
SAP difference postings
Approved differences, ready to key in. Direction lives in the movement type, never in the quantity.
What stands out
Derived from recorded counts. Nothing estimated.
What the counts found
Click a bar to see those lines.
Accuracy by aisle
Worst first — that is where to walk next.
Recent audits
| Audit | Section | Status | Lines | Opened |
|---|
What do you want to audit?
Reading the stock snapshot…
No audit open
Count sheet
In walk order: aisle, rack, level, position. Type a quantity and press Enter to drop to the next line. Leave the bin blank unless you found it somewhere else.
Counted on paper or a scanner?
Drop the sheet here. Columns are matched by meaning, and any row that could belong to more than one line is reported rather than applied.
Findings
Corrections
SAP difference postings
Audits
Every audit ever opened for this warehouse. Select one to go back to its sheet.
What Odyssey reads, and what it does with it
Written for someone who runs the warehouse, not someone who wrote the software.
Where the data comes from
SAP EWM is the warehouse module of SAP. Every pick, put-away and count is recorded there as a warehouse task, and what sits on each shelf is recorded as stock. Odyssey does not connect to SAP directly — you export a report from SAP to Excel and drop the file here.
Two warehouses are kept strictly apart and never combined: S099 is production, where the picking happens, and D099 is development, where stock is held. In the file itself they appear as the SAP owner codes BPS99 and BPSDEV, which is how Odyssey works out where a file belongs without asking you.
Nothing is ever overwritten. Re-importing a month creates a new revision and the previous one stays queryable, so last month's report still produces last month's numbers.
Files it accepts
Column names can vary — it matches on meaning, not exact spelling.
What the numbers mean
| Figure | How it is worked out | What to watch for |
|---|
The audit suite
Counting the shelf, and turning what you find into something SAP can accept.
An audit compares what is physically on a shelf with what the system says is there. Odyssey keeps that evidence completely separate from the stock export: no audit ever changes the material data. What it produces is a list of differences and a named person's decision about each one.
Opening an audit freezes the sheet. Pick a section — an aisle, a rack, a single bin, a part, everything over a year old — and the expected quantities for it are copied at that instant. Importing a new stock export the next day does not change what your count is being compared against, which is what lets a finding from last month still be checked this month.
Blind counting is on by default. The system quantity stays hidden until you enter a count. Somebody who can see "10" and half-counts nine will write ten; hiding it is the standard control against exactly that, and you can switch it off from the count sheet if you need to recheck a line.
Differences become SAP postings. Approved quantity differences are listed as inventory-difference movements: 711 when the count found less than the system holds, so the difference leaves stock, and 712 when it found more, so the difference enters stock. Direction lives in the movement type, so the quantity on the list is always unsigned. If your site maps 711 and 712 the other way round, correct it before posting — a difference posted the wrong way moves the stock twice in the wrong direction.
A relocation gets no movement type at all. Stock found in the wrong bin was never lost or gained; it is a bin transfer. Posting it as a difference would write off stock that is sitting right there and then receive it back.
Accuracy is always reported next to coverage. Ninety-nine percent accuracy across two percent of the warehouse tells you almost nothing about the other ninety-eight, so the dashboard shows both and the assistant is required to quote both.
Counted on paper or with a scanner? Drop the sheet onto the count sheet tab. Columns are matched by meaning rather than exact spelling, and any row that could belong to more than one line is shown to you rather than applied — a count written against the wrong line invents a difference in one place and hides one in another.
Three things about this SAP data you should know
Amt.in Loc.Cur. on movement type 261. Until that exists, valuation reports zero coverage rather than an estimate. Nothing here is ever guessed.Audit
Every file, revision and open issue. Nothing here is derived — it is the record.
Open issues
| Severity | Rule | Rows | File | What it means |
|---|
Revisions
| Revision | Warehouse | Report | Period | # | Status | Created |
|---|
Imports
| File | Warehouse | Report | Status | Size | SHA-256 | Loaded |
|---|