Aging by Location Report
How many days each lot has been sitting, and in which area
Reconstructs each lot's route through the company's internal areas and computes the days it spent in each. Shows where product stalls, with a per-category average to compare against.
How you get it
Every development works in all three Odoo environments. The only thing that changes is how we deliver it.
Odoo Online (SaaS)
You do not need the ability to install modules. A Millora consultant comes in with temporary access that you authorize and implements it with Odoo Studio. When they are done, you revoke the access.
Odoo.sh or your own server
You receive the module and the installation guide by email as soon as payment clears. Install it yourself, or we install it with you.
Installation · shell
# 1 · copia el módulo a tu addons_path
cp -r millora_reporte_de_permanencia_por_ubicacion /mnt/extra-addons/
# 2 · reinicia y actualiza la lista de apps
odoo-bin -u all -d tu_base --stop-after-init
# 3 · instala desde Apps
# busca "Aging by Location Report"What it solves
The problem
Odoo tells you where a product is. It never tells you how long it has been there.
And that second question is the one that matters when something misses its date. A lot that has been in quality control for eleven days and one that has been there for two look exactly the same on the stock screen: both are in quality control.
Internal transfers hold the answer — each one has its date — but it is scattered across dozens of movements. Working out how long a lot took to cross the plant means opening its transfers one by one and subtracting dates by hand. Nobody does that, so the bottleneck is known by habit: everyone suspects one area, nobody has the number.
How it works
You pick a period and, if you are after something specific, type a word from the product's name.
The report reconstructs each lot's route from the internal transfers already recorded — nothing new to enter — and returns a table with the product, the lot, the date it entered and left each area, the days it spent there, and the total from arrival until it left the last process.
That is where the bottleneck stops being a suspicion: the days-per-area column points at exactly where things pile up.
On top of that sits the average days per product category. That is the figure that lets you compare: if one product family takes twice as long as another in the same area, the problem isn't the area — it's the product, or how it is processed.
What it's used for
Three different uses, one report.
Finding where flow stalls. The days-per-area column, sorted, is the list of your real bottlenecks.
Proving times. Quality can show with exact dates that a lot spent the required time under review — or that it didn't.
Seeing whether something improved. Bounded by period, this month's report against last month's says whether the change they made worked.
What it does not do
It only sees internal movements. What came in from a vendor or went out to a customer stays outside: this measures transit inside your operation, not the full cycle.
It does not judge the times. It tells you a lot spent nine days in an area. Whether nine days is a lot is for you to say; the report has no expected figure to compare against.
It does not replace turnover or inventory reports. It answers a different question.
And it works from the transfers' confirmed dates: if a movement was validated three days after it happened, the report counts those three days. It measures what the system recorded, not what happened on the floor.
What changes
The argument about which area is the bottleneck ends, because there is a column with the days in it.
And the forgotten lot — the one that has sat in a corner for three weeks because nobody looked at it again — surfaces on its own, at the top of the list, without anyone going looking for it.
What's included
- Reconstructs each lot's route from the internal transfers already recorded
- Shows the entry and exit date of every area, lot by lot
- Computes the days the lot stayed in each internal location
- Totals the days from arrival until it left the last process
- Averages days per product category, to compare families against each other
- Filters by a word inside the product's name
- Bounds the analysis to the date range you choose
- Works on any location defined as internal, with no separate setup
Requirements
- Inventory module active
- Internal transfers recorded in Odoo: they are the report's raw material
- Internal locations that map to the real areas of your operation
- Products tracked by lot, since the route is followed by lot
- A user with Inventory permissions
You might also need
Fulfillment Restock Calculator
How many units to ship to the marketplace warehouse, with numbers
Inventory & warehouse
Fulfilment Appointments
So the appointment doesn't fall through over something already known
Inventory & warehouse
Containers
You know what each unit cost you before the ship docks
Inventory & warehouse

