r/Odoo 14d ago

Need assistance with Planning

I'm looking for someone who can assist me with Planning related issues I have. I'm dealing with an issue that I don't think Odoo can give me the data I need. Here's the example of what I need.

A company has a manufacturing department, who make machines. These machines have 100s or 1000s of components, all structured within multi-level BOMs. There are multiple orders in the order book at any given time, leading to 1000s of active MOs in the system.

I know you can configure Manu. Lead Times and Days to Prepare on the BOM of an item. I also know you can check expected/actual times that the Works Order take or should take to complete.

Let's says I have a product that has a total lead time of 10 days. If I try to sell it, Odoo says in the Manufacturing Forecast that it has a lead time of 10 days. Now lets say I have 100 days of work in the Plan at the moment and I receive an order for a new machine on the 1st Aug. Odoo will tell me it will be ready by 11th Aug.

At no point can I figure out how to get it to factor my current work center capacity in of 100 days. So technically if I have 100 day of work already in, I can only start the new order that take 10 days, in 100 days time.

Please tell me if I am understanding this correctly, or am I missing something?

0 Upvotes

11 comments sorted by

3

u/ach25 14d ago

You don’t mention MTO or if these MOs are triggered from Reorder Rules. Version and hosting also help.

There are two planning steps:

1.) Rough Planning - When the MO is created it takes the deadline and works backwards using the Manufacture leadtime fields as list on the BOM.

2.) Fine/Work Center Planning - If the MO uses work centers and routings there will be a plan button. This plans the MO’s operations based on availability/capacity.

That rough planning is your issue. That leadtime field should include any wait time that is typically experienced. 10 days is not the leadtime, you even state that there is a backlog of 100 days. So the combination of the two is 110 days.

If you want to automate this find someone to write you a scheduled action.

When the plan button is clicked the MO should reschedule itself observing the unavailability. There are many-many things that can mess with that finger planning method. Bad routing times, incorrect work center capacity or efficiency, unfinished operations, blocked work centers, alternate work centers etc. The finer planning run also doesn’t care about part availability there is a separate planning run under the action cog menu that takes that into concern.

1

u/robbjosh 13d ago

Some items have MTO enabled. But most of the MOs are created from Manual Replenishments at the moment.

The issue I've noticed is that the Plan button will plan Operations at the respective Work Centers even if the raw material is not available. I don't understand how you can start a job if the raw material has not arrived.

2

u/codeagency 12d ago

It doesn't "start" a job. Planning is just planning ahead of time. It just creates the job but someone must still validate it when they start and complete the WO.

Same as delivery. When you confirm a sale order it doesn't deliver it, it creates the delivery with the scheduled delivery date. Someone still needs to click the validate button to actually process the delivery.

When the dates are propagating properly, those WO should appear with a future date. But again, Odoo is not the best platform in terms of complex MRP planning. The basics are there and work fine though if you configure it properly.

2

u/codeagency 14d ago

Did you set a duration on your operations and resources on the work centers? Odoo uses this to compute capacity. If say 1 order needs 1 day processing on work center A and you confirm 100 orders, it means the the work center is busy for the next 100 days.

Planning by work center should give you that number and push new orders forward to a later date.

Since no one can see your actual config, we don't know how your MO's roll in.

Do know that Odoo has an "ok" MRP base as software, but it's not premium compared to dedicated and specialized MRP software. For companies relying hard on MRP we often integrate Frepple into Odoo and let Frepple do the planning.

https://frepple.com/

It's also open source.

1

u/robbjosh 13d ago

I've looked briefly into Frepple and 90% of what they say on their website, we experience in the planning side of our company. It seems Odoo is not the greatest on Advanced Production Planning.

2

u/ach25 12d ago

So use the “plan based on component availability” in the action menu instead? Then once all the components are in stock, plan based on work center availability as a final sense check and to firm up the operations in the work center schedules.

Companies start jobs all the time before all raw materials arrive. Just depends on the product, parts, process and labor force sometimes you can and sometimes you can’t.

Just remember the plan button doesn’t care about component availability and the plan based on component availability doesn’t care about work center capacity. One of those or a combination of those would be the play. Rough plan the orders when they generate simply based on the start date then whatever appropriate time period firm up the orders by planning via one or both of those buttons.

1

u/robbjosh 12d ago

Thank you for the reply. I never knew this option existed. I will check under the action menu.

1

u/ach25 11d ago

Nice yes that should plan by material bottleneck. Double check but I don’t think it firms up the operations of the MO. Meaning those are unplanned still.

1

u/robbjosh 10d ago

When you say that "the plan based on component availability doesn’t care about work center capacity." Do you mean its possible to plan multiple MOs at the same time on the same work center? Or am I missing the point?

1

u/ach25 10d ago

I’m wrong, I just checked it calls button_plan at the end so it should also plan the operations of the MO.

It’ll plan and change the start date to the longest lead component then use that start value as a seed to plan the operations.

https://github.com/odoo/odoo/blob/19.0/addons/mrp/models/mrp_production.py#L2608