frePPLe / frepple

frePPLe - open source supply chain planning

Home Page:https://frepple.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

When MO is update its status from completed to closed

onepiecewyz opened this issue · comments

I'm have been used frepple 0.5 year since 2021-08 and i am amazed at its generality, there are two confusion:

  1. When a MO is updated its status from completed to closed and then replan, there generates a new same MO with status of completed. In other words, there exist a old MO with status of closed and another new MO with status of completed. What is your consider? The normal understanding is to expect only one MO with status of closed. What is meaning about status of "closed". Some explanation in model-reference/"manufacturing-orders.rst is “closed : The manufacturing order has been completed. It is ignored for planning." but obviously it is not ignored so that new MO with status of completed is generated.
    image
  2. Partially completed doesn't work. WIP.produce_full_quantity have been set false. When a MO is updated its quantity_completed from null to value with status of confirmed, the quantity_completed is empty after replan, and new MO is not generated with lack quantity ( lack quantity = quantity - quantity_completed ). How to use quantity_completed correctly.

On 1):
There is some logic that propagates the "completed" status.
Eg If you mark step 3 in the supply path as "completed", frepple will verify the previous steps produced the items and increased the inventory. If no stock was found, the logic will mark the preceding steps 1 and 2 as "completed" it they were not.
I suspect this is causing the creation of the duplicate manufacturing order.

On 2):
This is a relatively new feature that hasn't been extensively tested with different supply path structures yet, especially not with the Community Edition.
So, this could be a bug. Your description in itself isn't too helpful in analyzing and correcting the problem. We'd need a small example to reproduce the problem, (and it'll probably be low priority for us to spend time on it).

I has tried to analyse the reason of 1st problem for few days. Now i'm pretty sure it's not caused by back propagation of status 'completed'.

This problem can be reproduced by default dataset "manufacturing_demo". When "manufacturing_demo" dataset is loaded with empty database. All MOs are set from 'proposed' to 'completed', and then they are set from 'completed' to 'closed'. After that we replan and see what is going on. There exist double quantity of MOs with half 'closed' and half 'proposed'. That makes me believe that the MOs is scrapped with status 'closed'. This resulted in new MOs are reproduced.

In short, what is physical meaning of status 'closed' in industrial production,'scrapped' or 'finished'?

image

image

The behavior you describe is expected and as-designed.

The logical flow is as follows:

  • manufacturing order is in status "confirmed" while the operators are working on it.
  • manufacturing order in status "completed" when it's done, and before the material is booked as inventory
  • once the produced material is booked in inventory, the stock of the produced material should be increased and the manufacturing can move to the status "closed"

In your example you bring material to the status "closed" but the stock of the produced material is not increased. So, frepple will propose another manufacturing order to meet the demand.

frepple is a planning tool. We rely on an ERP / MES / shop floor system to track all actions in the factory. frepple is not increasing the inventory when you mark something closed. The ERP / MES / shop floor system is responsible for that.

Closing this issue - not a bug.

Thanks for patient, Your answer was very valuable to me! So Odoo is required.

Last question: how to track that produced is booked in inventory? By buffer table or operationplanmaterial table?

The buffer table is where onhand inventory is stored. This is populated with information from the ERP.

Thanks again, my confusion is cleared