Reading and Resolving MRP Planning Exceptions in Odoo

When MRP cannot make the plan work, it flags an exception. How to read and resolve those signals in Odoo.

When MRP runs, it does not only produce proposed actions; it also flags exceptions, situations where the plan cannot be satisfied as things stand. Those exceptions are valuable. This piece is about reading and resolving MRP planning exceptions in Odoo.

What a planning exception is

The MRP run calculates what needs to happen to meet demand. Sometimes the calculation reveals a problem: a requirement that cannot be met in the time available, given current lead times, stock, and capacity. Rather than silently producing an impossible plan, Odoo flags this as a planning exception. An exception is MRP telling the manufacturer: here is something about the plan that does not work, and you need to look at it.

Why exceptions are valuable, not a nuisance

It is tempting to see exceptions as noise, a list of problems cluttering the plan. They are the opposite. An exception is an early warning. It is the planning system surfacing a problem while there is still time to do something about it, rather than letting it become a stock-out or a missed delivery discovered on the floor. A manufacturer that reads and acts on its planning exceptions is being warned of trouble in advance. A manufacturer that ignores them is choosing to meet that trouble later, as a surprise. The exceptions are one of the most useful things the MRP run produces.

Reading an exception

Reading an exception means understanding what it is telling you. Typically, an exception points to a requirement that cannot be satisfied in time: something is needed by a certain date, and given how long it takes to make or buy, and what is available, it will not be ready. The exception identifies the specific situation, the product, the timing, the gap. Reading it well means understanding why the plan does not work at that point: is it a lead time that is too long for the time available, a shortage that the plan cannot cover, a date that cannot be met? Understanding the why is the basis for resolving it.

Resolving an exception

Resolving an exception means doing something about the underlying problem. The resolution depends on the exception, but the kinds of action are recognisable. The manufacturer might expedite something, getting a needed item faster than the normal lead time. It might adjust the timing, accepting that the requirement will be met later, and managing the consequence with the customer or downstream. It might find an alternative, a different component, a different supplier, a different work center. It might adjust priorities so the constrained resource does this work first. The point is that an exception is resolved by a deliberate decision and action, not by ignoring it or by re-running MRP and hoping it goes away.

The discipline: review exceptions every run

The practical discipline is simple and important: every time MRP runs, the planning exceptions should be reviewed. This is not an occasional task; it is the routine that keeps planning honest. The MRP run keeps the plan current; reviewing the exceptions keeps the manufacturer aware of where the current plan is in trouble. A manufacturer that runs MRP regularly but never looks at the exceptions is getting the calculation but not the warnings, which means it is flying with the warning lights covered.

Exceptions and data quality

One honest note. Exceptions are only as meaningful as the data MRP runs on. If lead times are wrong, MRP may flag exceptions that are not real, or miss ones that are. If stock figures are inaccurate, the same. Persistent, puzzling exceptions are sometimes a sign not of a real planning problem but of bad input data. So part of taking exceptions seriously is keeping the underlying data, the lead times, the stock, the BOMs, accurate, so that the exceptions MRP flags are genuine signals worth acting on.

The takeaway

MRP planning exceptions in Odoo are the run flagging situations where the plan cannot be met as things stand. They are valuable early warnings, not noise. Reading an exception means understanding why the plan fails at that point; resolving it means a deliberate action, expediting, rescheduling, finding an alternative, adjusting priority. The discipline is to review the exceptions every MRP run. And persistent puzzling exceptions can signal bad input data, so keep the data accurate. For how we approach Odoo for manufacturers, see our manufacturing work.

All posts

Got a Topic Worth Posting?

Suggest a Topic

If a question keeps coming up in your operations, it might be worth its own post.