Hello Odoo Community,
I've identified a critical scheduling issue within the recently introduced "Plan Based on Components Availability" feature (v17, validated in v18.02 Enterprise Edition). This feature was developed to address a well-known scheduling problem from the legacy "Plan" method, where manufacturing orders (MOs) for finished products were incorrectly scheduled ahead of their required component MOs—a scenario that obviously creates impractical scheduling suggestions.
The new functionality significantly improves scheduling by correctly ensuring component MOs are planned ahead of finished product MOs. However, a critical prioritization flaw remains: under certain conditions, non-urgent replenishment MOs are mistakenly scheduled ahead of urgent Sales Order-driven MOs, causing significant operational delays and customer fulfillment risks.
In this detailed report, you'll find:
- Clear conditions under which the issue occurs.
- Concrete examples illustrating correct and incorrect scheduling behaviors.
- Step-by-step instructions to easily reproduce and validate the issue.
Resolving this remaining prioritization issue will significantly enhance operational effectiveness and reduce manual interventions.
I would greatly appreciate your valuable insights and recommendations to address this important challenge. Looking forward to your expert guidance and support!
【Report Structure (Index)】
-
Detailed Conditions to Reproduce
- Product BOM & Stock Conditions
- Reordering Rules & Settings
- Work Center (WC) & Operation Settings
- MO Schedule before "Plan" execution (for reference)
-
Actual Scheduling Results (SO: 2 units & 3 units)
- Case A: 2 units (Correct)
- Case B: 3 units (Incorrect)
- Expected Correct Schedule (Case B: 3 units)
- Conclusion & Questions
【1. Detailed Conditions to Reproduce】
Product BOM & Stock Conditions
Product | Type | Route | Current Stock | Components (per unit) | Lead Time |
---|---|---|---|---|---|
FERT-30 | Storable | Manufacture | 0 units | HALB-30×1 HALB-31 ×1 | 3 days |
HALB-31 | Storable | Manufacture | 2 units | All components available | 1 day |
HALB-30 | Storable | Manufacture | 4 units | All components available | 2 days |
- Note: All lower-level components for HALB-30 & HALB-31 are fully stocked.
Reordering Rules & Settings
Product | Reordering Rule | Remarks |
---|---|---|
FERT-30 | Min=0, Max=0 | Immediate MO creation upon SO (MTO-like behavior) |
HALB-31 | Min=2, Max=2 | Urgent replenishment needed (shortage for SO of 3 units) |
HALB-30 | Min=4, Max=4 | Sufficient stock, no urgent replenishment needed |
- Manufacturing settings are default.
- SO's requested delivery date is set equal to the MO creation date for simplicity.
- "Days to prepare" is not set.
Work Center & Operation Settings (Detailed per Product)
Product | Operation | Work Center | Duration/unit |
---|---|---|---|
FERT-30 | Assembly | Assembly WC | 60 min |
FERT-30 | Quality Check | Quality Check WC | 60 min |
HALB-30 | Assembly | Assembly WC | 60 min |
HALB-30 | Quality Check | Quality Check WC | 60 min |
HALB-31 | Assembly | Assembly WC | 60 min |
HALB-31 | Quality Check | Quality Check WC | 60 min |
Work Center Availability:
- Monday to Friday: 08:00 – 17:00
- Lunch break: 12:00 – 13:00
- Capacity: 1 worker per WC
- Time Efficiency: 100%
【2. MO Schedule before "Plan Based on Components Availability" execution (for reference)**
Scheduled times before planning execution are based solely on Manufacturing Lead Times.
(This state is identical for both SO quantities.)
MO Product | Qty | Scheduled Start | Scheduled End |
---|---|---|---|
FERT-30 | 2 or 3 units | 2025-05-28 21:00 | 2025-05-31 21:00 |
HALB-30 | 2 or 3 units | 2025-05-28 21:00 | 2025-05-30 21:00 |
HALB-31 | 2 or 3 units | 2025-05-28 21:00 | 2025-05-29 21:00 |
【3. Actual Scheduling Results**
Case A (SO for 2 units) - ✅ Correct
Seq | Product | Operation | WC | Qty | Start | End | Remarks |
---|---|---|---|---|---|---|---|
1 | FERT-30 | Assembly | Assembly WC | 2 | 2025-05-29 08:00 | 2025-05-29 10:00 | ✅ Urgent prioritized |
2 | FERT-30 | Quality Check | Quality Check WC | 2 | 2025-05-29 10:00 | 2025-05-29 12:00 | ✅ Urgent prioritized |
3 | HALB-30 | Assembly | Assembly WC | 2 | 2025-05-29 10:00 | 2025-05-29 12:00 | ✅ Non-urgent |
4 | HALB-30 | Quality Check | Quality Check WC | 2 | 2025-05-29 13:00 | 2025-05-29 15:00 | ✅ Non-urgent |
5 | HALB-31 | Assembly | Assembly WC | 2 | 2025-05-29 13:00 | 2025-05-29 15:00 | ✅ Non-urgent |
6 | HALB-31 | Quality Check | Quality Check WC | 2 | 2025-05-29 15:00 | 2025-05-29 17:00 | ✅ Non-urgent |
Case B (SO for 3 units) - ❌ Incorrect
Seq | Product | Operation | WC | Qty | Start | End | Remarks |
---|---|---|---|---|---|---|---|
1 | HALB-30 | Assembly | Assembly WC | 3 | 2025-05-29 08:00 | 2025-05-29 11:00 | ❌ Non-urgent prioritized |
2 | HALB-30 | Quality Check | Quality Check WC | 3 | 2025-05-29 11:00 | 2025-05-29 15:00 | ❌ Non-urgent prioritized |
3 | HALB-31 | Assembly | Assembly WC | 3 | 2025-05-29 11:00 | 2025-05-29 15:00 | ❌ Urgent delayed |
4 | HALB-31 | Quality Check | Quality Check WC | 3 | 2025-05-29 15:00 | 2025-05-30 09:00 | ❌ Urgent delayed |
5 | FERT-30 | Assembly | Assembly WC | 3 | 2025-05-30 09:00 | 2025-05-30 12:00 | ❌ Urgent delayed |
6 | FERT-30 | Quality Check | Quality Check WC | 3 | 2025-05-30 13:00 | 2025-05-30 16:00 | ❌ Urgent delayed |
【4. Expected Correct Schedule for Case B (SO for 3 units)**
- HALB-31 → FERT-30 → HALB-30 (urgent SO-based MOs first)
Seq | Product | Operation | WC | Qty | Start | End |
---|---|---|---|---|---|---|
1 | HALB-31 | Assembly | Assembly WC | 3 | 2025-05-29 08:00 | 2025-05-29 11:00 |
2 | HALB-31 | Quality Check | Quality Check WC | 3 | 2025-05-29 11:00 | 2025-05-29 15:00 |
3 | FERT-30 | Assembly | Assembly WC | 3 | 2025-05-29 15:00 | 2025-05-30 09:00 |
4 | FERT-30 | Quality Check | Quality Check WC | 3 | 2025-05-30 09:00 | 2025-05-30 12:00 |
5 | HALB-30 | Assembly | Assembly WC | 3 | 2025-05-30 09:00 | 2025-05-30 12:00 |
6 | HALB-30 | Quality Check | Quality Check WC | 3 | 2025-05-30 13:00 | 2025-05-30 16:00 |
【5. Conclusion & Questions for the Community】
This inconsistent prioritization appears to be a logic issue within “Plan Based on Components Availability,” leading to operational challenges and manual interventions.
-
Questions:
- Is this prioritization issue officially recognized or documented?
- Are there known workarounds or plans for future improvement?
Any insights or confirmations from the community would be highly appreciated.
Thank you very much for your support!