Workflow: Manufacturing Order
Modules involved: Manufacturing (MRP) · Warehouse · Purchase
Who uses it: Planificator producție, Operator atelier, Manager producție, Gestionar depozit
Durata tipică: Ore – săptămâni (depinde de complexitatea produsului)
Overview
Fluxul complet de producție: de la necesitatea unui produs finit (declanșat de o comandă de vânzare sau planificare internă) până la ieșirea produsului finit în depozit. Include verificarea disponibilității materialelor, planificarea operațiunilor pe centre de lucru, urmărirea execuției și integrarea cu achiziția (dacă materiale lipsesc).
Diagrama fluxului
[CERERE DE PRODUCȚIE]
│ din comandă de vânzare / planificare manuală
│ ↓
│
[REȚETĂ (Bill of Materials)]
│ produsul finit + componentele necesare + cantități
│ rută tehnologică asociată (operațiuni + centre de lucru)
│
[ORDIN DE PRODUCȚIE (Manufacturing Order)]
│ status: draft → confirmed → planned → in_progress → done
│ ↘ cancelled
│
├── Verificare disponibilitate materiale
│ │ Disponibile → rezervate în depozit (qty_reserved)
│ │ Lipsă → Cerere de Achiziție automată
│
├── [ORDINE DE LUCRU (Work Orders)]
│ │ câte un WO per operațiune din rută
│ │ status: waiting → ready → in_progress → finished
│ │ timp urmărit per operator: time_trackings
│
└── Consum materiale (qty_done)
│ scăzut din depozitul de componente
│
↓
[PRODUS FINIT → DEPOZIT]
│ stocul crește în finished_products_warehouse
│ inventarul actualizat automat
│
[ORDIN DE PRODUCȚIE: done ✓]
Pas cu pas
1. Rețetă (Bill of Materials — BoM) — Structura produsului
Unde: /admin/manufacturing/bill_of_material_manage
Ce definește o BoM:
- Produsul finit + cantitatea produsă per execuție
- Componentele (materii prime, subansamble): produs, cantitate, unitate de măsură
- Ruta tehnologică asociată: ordinea operațiunilor
Câmpuri BoM (mrp_bill_of_materials):
| Câmp | Note |
|---|---|
bom_code |
Codul unic al rețetei |
product_id |
Produsul finit |
product_qty |
Cantitatea produsă per execuție a BoM |
routing_id |
Ruta tehnologică (operațiuni + centre de lucru) |
consumption |
Mod consum: automatic, manual, semi-automatic |
ready_to_produce |
Flag că BoM e validată și gata de utilizare |
Detalii BoM — componente (mrp_bill_of_material_details):
| Câmp | Note |
|---|---|
product_id |
Componenta (materie primă / subansamblu) |
product_qty |
Cantitatea necesară per execuție |
unit_id |
Unitatea de măsură |
operation_id |
La ce operațiune se consumă componenta |
O BoM poate fi refolosită pentru oricâte ordine de producție. Modificările la BoM sunt înregistrate în
mrp_bom_changes_logscu tipul de schimbare și operatorul.
2. Ruta Tehnologică (Routing) — Planul de producție
Unde: /admin/manufacturing/routing_manage
Ce definește o rută:
- Secvența de operațiuni (tăiere, sudură, asamblare, control calitate)
- Centrul de lucru pentru fiecare operațiune
- Durata estimată per operațiune
- Dacă operațiunea următoare poate începe înainte de finalizarea celei curente (
start_next_operation)
Centre de lucru (mrp_work_centers):
| Câmp | Note |
|---|---|
work_center_code |
Cod unic |
working_hours |
Programul de lucru (ture) |
time_efficiency |
Eficiența (%) — ajustează duratele planificate |
capacity |
Capacitate simultană (câte ordine pot rula paralel) |
oee_target |
Target OEE (Overall Equipment Effectiveness) |
costs_hour |
Cost per oră — folosit la calculul costului MO |
Program de lucru (mrp_working_hours):
Ture definite pe zile ale săptămânii (work_from, work_to), cu perioadele de time-off (concedii, revizie), pentru planificarea realistă a timpilor.
3. Ordinul de Producție (Manufacturing Order) — Execuția
Unde: /admin/manufacturing/manufacturing_order_manage
Creare:
- Din comandă de vânzare: buton Crează Ordin Producție pe comanda confirmată
- Manual: definești produsul, cantitatea, BoM, depozitele
Câmpuri cheie MO:
| Câmp | Note |
|---|---|
manufacturing_order_code |
Cod unic (prefix + auto-increment) |
product_id + product_qty |
Ce și cât se produce |
bom_id |
BoM utilizată |
routing_id |
Ruta tehnologică |
date_deadline |
Termenul de livrare |
date_planned_start |
Data planificată start producție |
components_warehouse_id |
Depozitul din care se consumă materiale |
finished_products_warehouse_id |
Depozitul în care intră produsul finit |
purchase_request_id |
Link la cererea de achiziție dacă materiale lipsesc |
Statusurile ordinului de producție:
| Status | Descriere | Ce se întâmplă |
|---|---|---|
draft |
Creat, neconfirmat | Se poate edita liber |
confirmed |
BoM și ruta validate | Se verifică disponibilitatea materialelor |
planned |
Program de producție generat | Work Order-urile sunt create; materiale rezervate |
in_progress |
Producția a început | Operatorii înregistrează activitate pe WO-uri |
done |
Finalizat | Produsul finit intrat în depozit; materiale consumate |
cancelled |
Anulat | Materialele rezervate sunt eliberate |
4. Verificarea materialelor — Disponibilitate și achiziție
La trecerea MO în confirmed:
- Sistemul verifică
qty_reservedvs stoc disponibil încomponents_warehouse_id - Dacă materiale disponibile: rezervate imediat (
qty_reservedcrescut pe componente) - Dacă materiale insuficiente: câmpul
material_availability_statusmarchează lipsa + opțional se creează automat o Cerere de Achiziție (purchase_request_idcompletat pe MO)
Rezervarea materialelor (mrp_manufacturing_order_details):
| Câmp | Descriere |
|---|---|
product_id |
Componenta |
qty_to_consume |
Cantitate necesară (din BoM × cantitate MO) |
qty_reserved |
Cantitate blocată din stoc |
qty_done |
Cantitate efectiv consumată |
warehouse_id |
Depozitul sursă |
5. Ordine de Lucru (Work Orders) — Execuția pe atelier
Unde: /admin/manufacturing/work_order_manage
Creare:
La trecerea MO în planned, sistemul creează automat câte un Work Order pentru fiecare operațiune din ruta tehnologică.
Câmpuri Work Order:
| Câmp | Note |
|---|---|
manufacturing_order_id |
MO-ul părinte |
routing_detail_id |
Operațiunea din rută |
work_center_id |
Centrul de lucru alocat |
operation_name |
Denumirea operațiunii |
qty_production |
Cantitate de produs |
qty_producing |
În execuție curent |
qty_produced |
Finalizat |
date_planned_start/finished |
Programul planificat |
date_start/finished |
Datele reale |
duration_expected |
Durata planificată (minute) |
real_duration |
Durata reală |
Statusuri Work Order:
| Status | Descriere |
|---|---|
waiting |
Așteaptă finalizarea WO anterior (dacă start_next_operation = false) |
ready |
Poate începe — resursele sunt disponibile |
in_progress |
Operatorul lucrează |
finished |
Operațiunea completă |
Înregistrarea timpului (mrp_work_order_time_trackings):
Operatorul pornește/oprește timerul pe WO:
from_date,to_date→ calculeazădurationstaff_id→ operatorul responsabil- Suma timpilor reali →
real_durationpe WO vsduration_expecteddin planificare
6. Consum materiale și produse finite — Ieșirea din producție
Consumul materialelor:
- La finalizarea fiecărui WO sau la închiderea MO:
qty_doneactualizat pe componente - Stocul din
components_warehouse_idscăzut automat - Discrepanțele față de BoM înregistrate în
mrp_bom_changes_logs
Modul de consum (consumption):
| Mod | Descriere |
|---|---|
automatic |
Materiale consumate automat la validarea WO |
manual |
Operatorul introduce cantitățile consumate |
semi-automatic |
Sistem propune; operatorul confirmă |
La MO status done:
- Produsul finit (cantitate
product_qty) → adăugat înfinished_products_warehouse_id - Tranzacție de stoc creată în modulul Warehouse (
goods_transaction_detail) - Costul MO calculat:
materiale + ore × cost_hour centre de lucru - Materialele rezervate rămase sunt eliberate
Ce se creează automat
| Eveniment | Se creează automat |
|---|---|
MO → confirmed |
Verificare stoc; rezervare materiale (qty_reserved) |
| Materiale insuficiente | Cerere de Achiziție (purchase_request_id pe MO) |
MO → planned |
Work Orders per operațiune din rută |
| WO timer pornit | Înregistrare în mrp_work_order_time_trackings |
MO → done |
Produs finit adăugat în depozit; tranzacție stoc; cost calculat |
| BoM modificată în MO activ | Log în mrp_bom_changes_logs |
Puncte unde fluxul poate bloca
| Problemă | Cauză probabilă | Soluție |
|---|---|---|
MO nu poate trece în planned |
BoM incompletă sau rută lipsă | Verifică BoM → toate componentele au product_id + unit_id valid; adaugă rută |
| Materiale rezervate dar stocul scade tot | Alt MO sau livrare consumă din același stoc | Verifică qty_reserved vs stoc disponibil real; ajustează prioritatea MO |
WO-ul rămâne waiting |
WO anterior nefinalizat | Finalizează WO-urile în ordine; sau activează start_next_operation pe operațiunea anterioară |
| Produsul finit nu apare în depozit | MO nu a trecut în done |
Finalizează toate WO-urile; marchează MO done |
| Costul MO este 0 | costs_hour = 0 pe centrele de lucru |
Configurează costul per oră pe fiecare Work Center |
| Cererea de achiziție nu se generează | Funcționalitate neactivată sau materiale la 0 fără să fie verificate | Activează integrarea Purchase din setările Manufacturing |
Rapoarte relevante
- Dashboard Manufacturing —
/admin/manufacturing/dashboard— MO-uri active, WC utilization, OEE - Istoric Inventar —
/admin/warehouse/warehouse_history— intrări produse finite - Rapoarte Achiziții — materiale comanate pentru producție
- Raport Timesheets — ore efectuate per operator pe WO-uri
Configurare inițială necesară
Înainte de primul Ordin de Producție, trebuie configurate:
- Unități de măsură —
/admin/manufacturing/setting→ Unități - Centre de lucru —
/admin/manufacturing/work_center_manage— inclusiv programul și costul/oră - Programe de lucru — ture + zile libere
- Rute tehnologice —
/admin/manufacturing/routing_manage - BoM pentru fiecare produs —
/admin/manufacturing/bill_of_material_manage - Prefixe — coduri MO, BoM, Routing din
/admin/manufacturing/setting