Modulo Produzione

Distinte base multi-livello, versioning, ordini di produzione e integrazione magazzino

v 2.5 Manuale Utente
Note operative

Riferimenti normativi

A cosa serve questo modulo

Il modulo Produzione permette di:

1Panoramica del modulo

Il modulo si compone di due aree principali. Nella versione solo Produzione le trovi fra le schede della barra in alto (Cruscotto, Distinte, Ordini, MPS, MRP, Terminale, Qualità, Magazzino, Catalogo e, per chi ha il permesso, Backup dati), e il libro 📖 della barra apre questo manuale. Nel gestionale completo sono voci del gruppo PRODUZIONE del menu laterale: le guide non sono voci del menu, ma due icone che compaiono accanto al titolo del gruppo quando lo apri (il libro per il manuale della Produzione, il PDF per la guida pratica). MPS, forecast, MRP, terminale di reparto, OEE, Gantt, qualità e manutenzione sono spiegati nel manuale della Produzione.

  • Distinte base — archivio delle ricette / formule / liste componenti.
  • Ordini produzione — lotti di produzione effettivi che consumano materie prime e generano prodotti finiti.

Le voci di catalogo coinvolte (prodotto finito, componenti, materie prime) sono quelle stesse usate in fatturazione, magazzino e DDT: nessun catalogo separato.

ⓘ Integrazione HARD con magazzino: avviare un ordine di produzione genera realmente movimenti di magazzino (scarico materie; in modalità BACKFLUSH le materie escono invece al completamento). Completarlo genera realmente il carico del prodotto finito. Le giacenze sono sempre coerenti.
2Distinte base — concetti chiave

Una distinta base è la "ricetta" che descrive come si ottiene un prodotto finito. È composta da:

CampoSignificato
CodiceIdentificativo univoco (es. DB-PROD-001)
DescrizioneNome operativo della distinta
Prodotto finitoVoce di catalogo che si ottiene (FK a Catalogo)
Resa previstaQuanto prodotto si ottiene (es. 1 per "ricetta da 1 unità", 10 per "lotto da 10 kg")
UMUnità di misura della resa (PZ, KG, LT…)
Versione correnteNumero progressivo della formulazione
StatoBOZZA / ATTIVA / OBSOLETA

Stati di una distinta

  • BOZZA: in costruzione, non utilizzabile per generare ordini di produzione. Modifiche libere senza versioning.
  • ATTIVA: pronta all'uso. Solo le distinte attive possono essere usate in un ordine. Ogni modifica genera automaticamente uno snapshot della versione precedente.
  • OBSOLETA: dismessa, conservata per sola consultazione storica.

Componenti (righe della distinta)

Ogni riga rappresenta una materia prima o un sotto-componente:

CampoSignificato
ComponenteVoce di catalogo (può essere materia prima o un altro prodotto con sua distinta)
QtyQuantità di componente per una unità di resa
UMUnità di misura della componente (KG, LT, PZ…)
Scarto %Spreco/calo previsto. Esempio: 5 = il 5% di scarto applicato in fase di scarico
SequenzaOrdine di visualizzazione nella distinta
3Creare una distinta base
  1. Apri la scheda Distinte (nel gestionale completo: Produzione → Distinte base).
  2. Premi + Nuova distinta (creare e modificare le distinte spetta all'amministratore).
  3. Compila l'intestazione: codice, descrizione, prodotto finito (selezionato dal catalogo), resa prevista (es. 1 per ricetta unitaria), UM.
  4. Premi + Aggiungi riga per ogni componente. Per ogni riga compila il componente (catalogo), la quantità e l'eventuale scarto%.
  5. Salva. La distinta nasce in stato BOZZA.
  6. Quando hai verificato la formula, cambia lo stato in ATTIVA e salva. Da questo momento il versioning è attivo.
ⓘ Le frecce su/giù accanto a ogni riga permettono di riordinare i componenti in fase di stampa o di esplosione.
4Distinte multi-livello

Un componente di una distinta può a sua volta essere il prodotto finito di un'altra distinta ATTIVA. In questo caso si parla di distinta multi-livello.

Esempio: una crema cosmetica usa una "base oleosa" come componente. La base oleosa è essa stessa un prodotto con la sua distinta (olio + emulsionante + conservante). Quando si esplode la distinta della crema, il sistema scende ricorsivamente nelle sotto-distinte fino ad arrivare alle materie prime foglia (quelle senza distinta).

OperazioneComportamento multi-livello
Esplosione distinta padreEsplode anche le sotto-distinte ATTIVE; le quantità vengono moltiplicate e consolidate
Avvio ordine di produzioneScarica solo le materie prime foglia (sotto-componenti che hanno distinta non vengono scaricati: il loro consumo viene risolto al livello più basso)
Componente con stessa qty richiesta da rami diversiLe quantità vengono sommate nella tabella materie prime piatta
⚠ Anti-ciclo: il sistema rileva eventuali cicli (distinta A include B, B include A) e blocca l'esplosione segnalando l'errore. Mai eseguire un ordine se l'esplosione segnala "ciclo rilevato".
5Versioning automatico

Quando una distinta è in stato ATTIVA e viene modificata e salvata, il sistema:

  1. Crea uno snapshot completo della distinta corrente (intestazione + tutte le righe) e lo archivia in storico con la data di validità.
  2. Incrementa il numero di versione (v1 → v2).
  3. Applica le modifiche alla distinta corrente.

Nel form distinta, il tab "Storico versioni" mostra tutte le versioni precedenti con motivo, data e composizione esatta delle righe. È possibile aggiungere un "Motivo" testuale al salvataggio (campo nel banner giallo del tab Definizione).

ⓘ Tracciabilità storica: ogni ordine di produzione registra la versione esatta della distinta usata al momento dell'avvio. Anche se la distinta viene poi modificata, l'ordine resta legato alla versione di riferimento per l'audit trail.
6Esplosione distinta

L'esplosione (tab "Esplosione" del form distinta) calcola il fabbisogno totale di materie prime per produrre una determinata quantità di prodotto finito:

  1. Apri la distinta.
  2. Clicca sul tab Esplosione.
  3. Inserisci la quantità da produrre (es. 10).
  4. Premi Esplodi distinta.

Vengono mostrati due output:

  • Tabella materie prime totali: lista piatta consolidata di quanto serve di ogni materia prima foglia, con scarto già applicato.
  • Albero completo: visualizzazione gerarchica con indentazione, utile per capire il percorso multi-livello.

Esempio: distinta DB-001 con 2 righe (2.5 KG di COMP-A scarto 5% + 0.8 LT di COMP-B scarto 2%) ed esplosione con quantità 10 produce:

ComponenteCalcoloQuantità con scarto
COMP-A (KG)2.5 × 10 = 25 + 5% scarto26.25 KG
COMP-B (LT)0.8 × 10 = 8 + 2% scarto8.16 LT
7Ordini di produzione — workflow

Un ordine di produzione rappresenta un lotto reale da produrre. Attraversa 4 stati ben definiti:

Step 1
PIANIFICATO
Ordine creato, materie ancora a magazzino. Modificabile.
Step 2
IN_CORSO
Avviato. Materie scaricate. Non modificabile.
Step 3
COMPLETATO
Prodotto finito caricato. Costo consolidato.
Alt
ANNULLATO
Cancellato. Storni automatici se IN_CORSO.

Creazione di un ordine

  1. Apri la scheda Ordini (nel gestionale completo: Produzione → Ordini produzione).
  2. Premi + Nuovo ordine.
  3. Seleziona una distinta in stato ATTIVA.
  4. Specifica la quantità da produrre.
  5. (Opzionale) Note operative o riferimento lotto.
  6. (Se hai definito degli stabilimenti) scegli lo Stabilimento.
  7. Premi Crea ordine. Il numero (es. PRD-00001) è generato automaticamente: il successivo al più alto già usato.

Il pulsante + Nuovo ordine lo vede chi pianifica: il responsabile di produzione (PRODUCTION_MANAGER, o un amministratore) con il permesso del ruolo produzione.ordini.completa, lo stesso che serve per generare gli ordini da MPS e MRP. Finché l'ordine è PIANIFICATO, la sezione Modifica testata del dettaglio (quantità prevista, data inizio, note) la usa l'amministratore o il responsabile di produzione con lo stesso permesso; mandare un ordine nel cestino resta all'amministratore.

8Avvio: scarico HARD materie

Premendo "Avvia produzione" sul dettaglio di un ordine PIANIFICATO:

  1. Il sistema esplode la distinta per la quantità prevista.
  2. Per ogni materia prima foglia crea un movimento di magazzino di tipo SCARICO_PRODUZIONE con causale "Produzione PRD-NNNNN".
  3. Il costo unitario è il costo medio di magazzino del componente, lo stesso con cui scende la giacenza: il valore che esce dai componenti è quello che entra nel finito.
  4. Il costo materie totale viene calcolato e salvato sull'ordine.
  5. Lo stato passa a IN_CORSO e viene impostata la data inizio.

Questo vale per la modalità STANDARD. In BACKFLUSH l'avvio cambia solo lo stato: le materie si scaricano al completamento (sez. 22), e il pulsante e la conferma lo dicono.

⚠ Attenzione: l'avvio comporta movimenti di magazzino reali. Se le giacenze non sono sufficienti, il magazzino scende fino a zero (non sotto) e la parte mancante resta scritta sull'ordine come consumo da spiegare. Se manca proprio merce che è in quarantena, l'avvio si ferma. Verifica le giacenze prima di avviare un ordine importante.

Tutti i movimenti generati sono visibili nel tab Movimenti del dettaglio ordine, con badge rosso "PRELIEVO" e link al numero del movimento di magazzino corrispondente.

9Completamento: carico HARD prodotto finito

Premendo "Completa produzione" sul dettaglio di un ordine IN_CORSO:

  1. Specifica la quantità effettivamente prodotta (può differire da quella prevista per via di rese effettive diverse).
  2. Il sistema crea un movimento di magazzino di tipo CARICO_PRODUZIONE per il prodotto finito.
  3. Il costo unitario del prodotto finito è calcolato come: (costo materie totale + costo delle fasi completate) / quantità prodotta, al netto della quota data ai by-product. Le materie sono valorizzate al costo medio di magazzino con cui sono uscite: il valore che esce dai componenti è quello che entra nel finito.
  4. Il costo totale viene salvato sull'ordine; lo stato passa a COMPLETATO e viene impostata la data fine.
ⓘ Se la resa effettiva è inferiore al previsto, il costo unitario del prodotto finito risulterà più alto. È normale e riflette correttamente il consumo reale di materie.
10Annullamento e storni

L'annullamento è disponibile dal dettaglio ordine. Comportamento differente in base allo stato corrente:

Stato correnteEffetto dell'annullamento
PIANIFICATOStato → ANNULLATO. Nessun movimento di magazzino (non ce n'erano).
IN_CORSOStato → ANNULLATO. In BACKFLUSH non c'è niente da stornare (le materie non erano ancora uscite). In STANDARD, per ogni scarico viene creato un movimento di CARICO_RETTIFICA che storna lo scarico originale: la quantità uscita davvero dal magazzino (non quella mancante), nello stesso magazzino e unità di misura, senza ricalcolare il costo medio; il lotto riprende quanto gli era stato tolto.
COMPLETATOBloccato: non è consentito annullare via UI un ordine già chiuso. È necessario lo storno manuale dal modulo magazzino.

Al momento dell'annullamento è richiesto un motivo testuale (es. "errore nei dosaggi", "cliente ha cancellato l'ordine") che viene aggiunto alle note dell'ordine per audit trail.

⚠ Eliminazione: un ordine si può cancellare solo se è in stato PIANIFICATO o ANNULLATO, e lo fa un amministratore: finisce nel cestino della produzione, da cui si ripristina (l'eliminazione definitiva la fa solo il Super Amministratore, con la firma). Gli ordini IN_CORSO o COMPLETATO non sono mai cancellabili (preservazione audit trail fiscale e operativo).
11Tracciabilità lotti FEFO

Il sistema gestisce tracciabilità completa dei lotti dal componente al prodotto finito.

Logica FEFO (First Expired First Out)

Quando un ordine viene avviato, per ogni materia prima il sistema cerca i lotti attivi e li consuma in ordine di scadenza (i più vicini a scadere per primi). Se un lotto non basta a coprire la quantità richiesta, il prelievo passa al lotto successivo. Ogni movimento di scarico è collegato al lotto specifico.

Lotto del prodotto finito

Al completamento di un ordine viene generato automaticamente un nuovo lotto per il prodotto finito, con:

  • Numero lotto: di default uguale al numero ordine (PRD-NNNNN), modificabile
  • Data produzione: data/ora del completamento
  • Data scadenza: opzionale, inseribile dall'operatore
  • Costo unitario: calcolato dividendo il costo totale per la quantità prodotta

Annullamento con ripristino lotti

Annullare un ordine in stato IN_CORSO ripristina automaticamente la quantitaResidua dei lotti scaricati, generando movimenti di CARICO_RETTIFICA di storno legati ai movimenti originali.

La pagina Tracciabilità lotti: genealogia e richiamo

Da Produzione → Tracciabilità lotti si ricostruisce la storia di un lotto. La pagina si apre con l'elenco dei lotti più recenti: clicchi un lotto, oppure lo cerchi per numero, codice o descrizione dell'articolo.

  • A monte — composizione: cosa è entrato per produrre quel lotto, cioè i lotti dei componenti con la quantità usata e il fornitore, su tutti i livelli;
  • A valle — richiamo: dove è finito il lotto. Mostra i prodotti in cui è entrato e, sotto Consegnato a, i clienti che l'hanno ricevuto, con il DDT o la fattura, la data e la quantità. Se il lotto è passato da un terzista (conto lavoro), la catena prosegue: lotto presso il terzista → lavorato rientrato → i suoi prodotti e clienti. Gli ordini annullati non contano.

Le due viste si combinano: dal lotto di un componente difettoso si arriva ai lotti di prodotto finito che lo contengono, e da ognuno ai clienti a cui è stato consegnato. È l'elenco da cui parte un richiamo.

ⓘLa consegna al cliente si vede quando la vendita (DDT o fattura) ha scaricato il lotto: succede da solo all'emissione, partendo dal lotto che scade prima o, senza scadenze, dal più vecchio. La freccia ← in alto, con un lotto aperto, riporta all'elenco; dall'elenco torna al menu.
12Where-used (esplosione inversa)

Il tab "Dove usato" del form distinta mostra in quali altre distinte è impiegato il prodotto finito di quella corrente.

Si distingue tra:

  • Uso diretto (livello 1): distinte che hanno il prodotto come componente di una riga
  • Uso indiretto multi-livello (livello 2+): catena di sub-distinte fino al prodotto finale

Utile per analisi impatto di una modifica formula, sostituzione componente, eliminazione voce.

13Pick list stampabile

Per ogni ordine PIANIFICATO è disponibile la lista di prelievo stampabile (icona "Stampa pick list" nelle azioni del dettaglio).

La pick list:

  • Simula il FEFO senza eseguire scarico
  • Indica per ogni materia prima i lotti suggeriti con qty da prelevare
  • Segnala in rosso eventuali scoperti (giacenza insufficiente)
  • Layout print-friendly (CSS @media print) con spazi firma magazziniere + responsabile
14Verifica giacenze pre-avvio

Aprendo un ordine PIANIFICATO il sistema esegue automaticamente un controllo disponibilità di tutte le materie prime previste.

Il banner sopra le azioni mostra:

  • Verde: tutte le giacenze sufficienti
  • Rosso: tabella dettaglio con qty richiesta, disponibile, scoperto per ogni materia mancante

Se l'utente preme "Avvia produzione" con scoperto, il sistema mostra un dialog di conferma con il dettaglio degli scoperti prima di procedere: se si conferma, il magazzino di quelle materie scende a zero (non sotto) e la parte mancante resta sull'ordine come consumo da spiegare.

15Centri di lavoro & cicli di lavorazione

Il modulo Centri di lavoro (menu Produzione → Centri di lavoro) permette di configurare le risorse di produzione: macchine, reparti, operatori, fornitori esterni. Crearli, modificarli e scriverne il calendario spetta all'amministratore.

Parametri di un centro di lavoro

  • Codice/descrizione/tipo: identificativi
  • Capacità giornaliera: ore disponibili al giorno
  • Costo orario macchina + Costo orario manodopera: usati per valorizzare la produzione
  • Efficienza %: per stime di tempi reali (default 100%)
  • Calendario eccezioni: chiusure, ferie, manutenzione, turni extra

Cicli di lavorazione sulla distinta

Il tab "Cicli di lavorazione" della distinta permette di definire le fasi:

CampoSignificato
SequenzaOrdine di esecuzione
DescrizioneEs. Pesatura, Miscelazione, Confezionamento
Centro di lavoroFK al centro che esegue la fase
Tempo setup (min)Tempo fisso di preparazione macchina
Tempo unitario (min/u)Tempo per ogni unità prodotta
Costo orario overrideSovrascrive il costo del centro (opzionale)
ObbligatoriaSe può essere saltata o no

Workflow per fase nell'ordine

Quando si crea un ordine, le fasi della distinta vengono fotografate insieme al centro di lavoro associato e ai costi orari del momento. Per ogni fase:

  1. Avvia fase: stato PIANIFICATA → IN_CORSO, registra dataInizio + operatore
  2. Completa fase: chiede tempo effettivo (default = differenza ora-avvio), calcola costoEffettivo = (tempo / 60) × costoOrario
  3. I tempi e i costi sono visibili nella sezione "Fasi di lavorazione" del dettaglio ordine

Al completamento dell'ordine, il costo manodopera totale sommato delle fasi viene aggiunto al costo materie per costituire il costo totale.

16Componenti alternativi (sostituzioni)

Per ogni riga distinta è possibile definire una lista di componenti alternativi con un fattore di conversione.

Esempio: la riga prevede 2.5 KG di COMP-A. Se al magazzino non ce n'è abbastanza, il sistema può prelevare:

  • COMP-A2 con fattore 1.0 (equivalente uno-a-uno)
  • COMP-A3 con fattore 1.2 (servono 3 KG di A3 per equivalere a 2.5 KG di A)

Gli alternativi sono provati in ordine di sequenza solo dopo che la materia principale ha esaurito le giacenze del magazzino di produzione (lotti e merce senza lotto). Valgono anche per le righe dei semilavorati esplosi, e la verifica disponibilità e la lista di prelievo li mostrano.

17Quality control (Quality gate)

Il tab "Qualità" della distinta permette di definire specifiche di qualità che devono essere verificate prima del completamento di un ordine.

Tipi di specifica

  • NUMERICO: valore numerico, esito conforme se compreso tra Min e Max
  • RANGE: come NUMERICO, con range obbligatorio
  • BOOLEAN: true/false, conforme se valore atteso
  • TESTO: stringa, conforme se identica al valore atteso

Test sull'ordine

Nel dettaglio ordine in stato IN_CORSO appare la sezione "Quality control": per ogni specifica si registra il valore misurato. L'esito può essere automatico (per NUMERICO/RANGE) o forzato dall'operatore.

Quality gate al completamento

Il completamento dell'ordine è bloccato se una o più specifiche obbligatorie non hanno test conforme. Il sistema risponde con HTTP 409 + lista delle specifiche mancanti.

18By-product / Co-product

La distinta può prevedere output secondari (oltre al prodotto principale): co-prodotti valorizzabili o scarti.

Per ogni by-product si definisce:

  • Voce catalogo: il prodotto secondario
  • Quantità per unità: quanto se ne ottiene per ogni unità di prodotto principale
  • UM: unità di misura del by-product
  • % costo allocato: percentuale del costo totale allocata al by-product (per coproduzioni)
  • Tipo: CO_PRODUCT (con valore) o SCARTO (tipicamente 0%)

Al completamento dell'ordine, oltre al carico del prodotto principale, vengono generati carichi separati per ogni by-product attivo. Il valore del prodotto principale viene scalato della percentuale totale allocata ai by-product.

19ECO workflow (Engineering Change Order)

Per modifiche distinta soggette ad approvazione formale (es. cambio formula in industria regolamentata), si usa il workflow ECO.

Stati ECO

BOZZA → IN_APPROVAZIONE → APPROVATO o RESPINTO → APPLICATO

Flusso operativo

  1. Crea ECO in BOZZA con titolo, descrizione e motivazione (snapshot della distinta corrente memorizzato)
  2. Submit per richiedere approvazione (BOZZA → IN_APPROVAZIONE)
  3. Un secondo utente approva o respinge (con motivo)
  4. Se APPROVATO, "Applica": le modifiche entrano in produzione, viene creato uno snapshot della versione precedente, l'ECO passa a APPLICATO

Gli ECO RESPINTI restano in storico per audit. Gli ECO BOZZA o RESPINTI possono essere eliminati definitivamente.

20Allegati distinta

Il tab "Allegati" permette di registrare riferimenti a documenti collegati alla distinta:

  • Disegni tecnici CAD
  • Schede di sicurezza materiali
  • Certificati di analisi (COA)
  • Procedure operative standard (SOP)
  • Fotografie del prodotto finito

Per ogni allegato si registra: nome, tipo, descrizione e il file — caricato dal computer con «Carica sul server» — oppure un collegamento http/https a una risorsa esterna. I file caricati sono riservati: stanno in una cartella dell'azienda e si aprono solo da NOX, dopo l'accesso (GET /api/distinte-base/allegati-distinta/:id/file).

21Effectivity dating (validità temporale per riga)

Ogni riga della distinta può avere date di validità "Valido dal" e "Valido al".

L'esplosione della distinta filtra automaticamente le righe attive alla data di riferimento (default = oggi). Permette transizioni progressive di formula:

  • Vecchia versione di un componente: valido al = data di transizione
  • Nuova versione del componente: valido dal = data di transizione

Più granulare del versioning ECO globale: lavora a livello di singola riga con effetto temporale.

22Backflushing (scarico al completamento)

Modalità alternativa al flusso standard, attivata sull'ordine al momento della creazione.

ModalitàQuando avviaQuando completa
STANDARDScarica le materie primeCarica solo prodotto finito
BACKFLUSHSolo cambio stato (no scarico)Scarica materie + carica prodotto finito (in unica transazione)

BACKFLUSH è utile in linee di produzione veloci dove non c'è tempo per gestire i prelievi all'avvio: il sistema deduce a posteriori cosa è stato consumato sulla base della distinta + qty effettivamente prodotta. Lo scarico è lo stesso dell'avvio STANDARD: lotti, merce senza lotto, alternativi, al costo medio di magazzino.

I pulsanti dell'ordine lo dicono: su un BACKFLUSH Avvia produzione riporta «Le materie si scaricano al completamento», Completa produzione «+ scarica le materie» e Annulla ordine «Nessuno storno», perché prima del completamento non è uscito niente.

23KPI dashboard produzione

La pagina "KPI Produzione" (scheda Cruscotto; nel gestionale completo Produzione → KPI Produzione) mostra metriche aggregate per il periodo selezionato (default: ultimi 30 giorni).

Indicatori

  • Ordini per stato: totale, completati, in corso, pianificati, annullati
  • Quota completati e quota annullati: % sul totale degli ordini del periodo (quelli nel cestino non contano)
  • Tempo medio avvio → fine: giorni medi tra avvio e completamento per gli ordini completati
  • Costo della produzione e costo per pezzo di ciascun prodotto: solo con il permesso «Vedere costi e margini»
  • Produzione giornaliera: numero di ordini completati per giorno (grafico a barre)
  • I cinque prodotti più fatti: per quantità totale prodotta nel periodo
  • Conformità qualità: % test conformi fra quelli eseguiti nel periodo
24Pick list materie prime

Documento operativo per il magazziniere che effettua il prelievo. Disponibile per ordini in stato PIANIFICATO dal pulsante "Stampa pick list" nelle azioni del dettaglio ordine.

Contenuto:

  • Testata ordine (numero, distinta, prodotto finito, qty)
  • Per ogni materia prima: codice, descrizione, qty totale, lotto FEFO suggerito (con scadenza), qty da prelevare
  • Sotto-righe se servono più lotti per coprire la qty
  • Avviso "scoperto" in rosso se giacenza insufficiente
  • Spazi per firma magazziniere e responsabile produzione

La stampa simula il FEFO senza eseguire scarico (read-only) — i lotti effettivi verranno scaricati al momento dell'avvio dell'ordine.

25Bolla di lavorazione

Documento cartaceo da consegnare al reparto produzione. Disponibile per ordini in PIANIFICATO e IN_CORSO.

Contenuto:

  • Intestazione con numero ordine, distinta, prodotto finito, qty prevista, data inizio prevista
  • Sezione 1: tabella componenti da prelevare con qty per ordine, UM, spazio per scrivere il numero lotto consumato e checkbox di conferma
  • Sezione 2: tabella fasi di lavorazione con tempo previsto, spazi per registrare orario inizio reale, orario fine reale, operatore e firma
  • Spazi per firma magazziniere, capo turno, responsabile produzione

L'operatore compila a mano la bolla durante la produzione; i dati possono essere poi inseriti nel sistema (avvia/completa fasi).

26Etichetta lotto prodotto finito (QR)

Etichetta adesiva formato 100×60 mm da applicare al pallet/scatola del prodotto finito. Disponibile dopo il completamento dell'ordine (richiede numeroLottoFinito valorizzato).

Contenuto:

  • Intestazione con il nome della tua azienda (dai Parametri) + numero ordine
  • Codice prodotto + descrizione
  • Numero lotto, quantità, data produzione, scadenza (in rosso)
  • QR code 26×26 mm con payload: LOTTO=…|PROD=…|QTA=…|ORDINE=…|SCAD=…
  • Riga di payload testuale leggibile sotto al QR

Selettore "Copie": stampa più etichette identiche (1-20) sul foglio A4 (5 etichette per foglio in layout 2 colonne).

Il QR è generato dal programma stesso: i dati del lotto non passano da nessun servizio esterno. Con uno scanner si legge il payload e si risale al lotto.

27Scheda di produzione (audit trail end-of-job)

Documento di riepilogo completo a chiusura ordine, da archiviare nel fascicolo qualità. Disponibile per ordini COMPLETATO.

Contenuto:

  1. Materie prime consumate: tutti i prelievi reali con lotto, qty, costo unitario e valore — totale costo materie
  2. Fasi di lavorazione eseguite: descrizione, centro, operatore, tempo previsto vs effettivo, costo orario, costo effettivo — totale manodopera
  3. Quality control: tutte le specifiche con valore misurato, esito (CONFORME/NON CONFORME), eseguito da chi
  4. Carico a magazzino: prodotto finito + eventuali by-product/scarti
  5. Riepilogo costi finali: materie + manodopera = costo totale → costo unitario prodotto
  6. Note operative

Spazi firma per responsabile produzione e responsabile qualità. Footer con data/ora di stampa per traccia.

28Sicurezza, ruoli e privilegi (chi può fare cosa)

Il modulo Produzione è protetto da un sistema di controllo a tre strati che il sistema valuta in AND per ogni operazione critica. Tutti e tre devono passare perché l'azione vada a buon fine.

  1. Ruolo base dell'utente (USER, OPERATOR, ADMIN, SUPERADMIN) — lo strato più ampio, valido per tutta la piattaforma.
  2. Privilegi Produzione (per singolo utente) — PRODUCTION_MANAGER, QUALITY_MANAGER, OPERATOR_PROD.
  3. Permessi del ruolo nel workspace (per coppia ruolo+azienda) — configurabili dal SUPERADMIN.

Strato 2: Privilegi Produzione (per singolo utente)

Riquadro lilla in Modifica Utente. Implementa la Separation of Duties tipica delle linee industriali: persone diverse svolgono compiti diversi, e nessuno può auto-autorizzare la propria operazione.

PrivilegioCosa abilita in Produzione
PRODUCTION_MANAGER Creazione degli ordini di produzione e correzione della testata di un ordine PIANIFICATO (col permesso produzione.ordini.completa); MPS, MRP (anche l'ordine a fornitore dalla proposta), Gantt e scenari; avvio, completamento, annullamento ordini; invio, rientro e annullo del conto lavoro; applicazione ECO; ripristino dal cestino produzione. Creare e modificare le distinte, cancellare gli ordini e gestire i centri di lavoro restano all'amministratore.
QUALITY_MANAGER Approvazione e respingimento ECO (su utenti diversi dal proponente); registrazione e forzatura dell'esito dei test qualità.
OPERATOR_PROD Avvio e chiusura delle singole fasi sui propri ordini.

I privilegi sono per singolo utente: in uno stesso workspace puoi avere Mario USER con QUALITY_MANAGER, Luigi USER con OPERATOR_PROD e Giovanni ADMIN con PRODUCTION_MANAGER. Senza il privilegio appropriato un USER non può toccare nulla in produzione. ADMIN e SUPERADMIN bypassano sempre i controlli di privilegio.

ⓘ Il default per ogni utente nuovo è nessun privilegio attivo. Vanno assegnati esplicitamente da chi ha il diritto di modificare la scheda utente.

Strato 3: Permessi del ruolo nel workspace

Riquadro arancio in Modifica Utente. Permette al SUPERADMIN di vietare un'intera azione a tutti gli utenti dello stesso ruolo nello stesso workspace, indipendentemente dai privilegi che possiedono individualmente.

Le chiavi che riguardano la produzione:

ChiaveRuoloEffetto se disabilitata
produzione.ordini.completaADMIN, USER, OPERATORGli utenti del ruolo non possono creare, avviare né completare ordini, né pianificare (MPS, MRP, Gantt, scenari), neanche con il privilegio. A un responsabile di produzione che non è amministratore si dà accendendola al suo ruolo.
produzione.eco.approvaADMIN, USER, OPERATORGli utenti del ruolo non possono approvare/respingere ECO, neanche con il privilegio QUALITY_MANAGER. A un responsabile qualità che non è amministratore si dà accendendola al suo ruolo.
cestino.ripristinaADMINGli ADMIN non possono ripristinare dal cestino produzione.
produzione.fasi.avvia_completaUSER, OPERATORGli utenti del ruolo non possono più aprire/chiudere fasi.
produzione.ordini.consultaUSER, OPERATORGli utenti del ruolo non vedono più gli ordini in consultazione.
quality.test.registraUSER, OPERATORGli utenti del ruolo non possono più registrare test qualità.
picking.gestisciUSER, OPERATORGli utenti del ruolo non possono più gestire pick list e prelievi.

Un workspace nuovo nasce con le chiavi della produzione accese all’amministratore e all’operatore come in tabella, e produzione.ordini.completa e produzione.eco.approva spente (ma con il loro interruttore) a utenti e operatori. L’adattamento di un’azienda al pacchetto Produzione accende le chiavi della produzione all’amministratore e quelle di lavoro (consultare, fasi, test) a utenti e operatori, ma non produzione.ordini.completa e produzione.eco.approva, che a utenti e operatori restano come in un’azienda nuova: chi deve gestire gli ordini o approvare gli ECO senza essere amministratore le riceve da qui. Le righe già scritte non si toccano. Le modifiche valgono per tutti gli utenti del ruolo nello stesso workspace.

Differenza pratica con un esempio

ⓘ Scenario: il workspace "Studio Bianchi" ha 3 USER. Il responsabile vuole che solo Mario possa registrare i test qualità, e che nessun USER possa applicare ECO.
  • Per il primo obiettivo — assegnare il privilegio QUALITY_MANAGER solo all'utente Mario nella sezione lilla. Lasciare il permesso ruolo quality.test.registra abilitato.
  • Per il secondo obiettivo — non c'è bisogno di toccare i privilegi: gli USER non hanno comunque PRODUCTION_MANAGER. Per blindare ulteriormente, il SUPERADMIN può disabilitare il permesso ruolo USER produzione.eco.approva.
Risultato: Mario può registrare test, gli altri due USER no. Nessun USER può applicare ECO.

Operazioni e relativi controlli

OperazionePrivilegio richiestoPermesso ruolo richiestoFirma elettronica
Creare un ordine, correggerne la testata (se PIANIFICATO)PRODUCTION_MANAGER (gli ADMIN correggono la testata anche senza il permesso)produzione.ordini.completa—
Cancellare un ordine (va nel cestino)Solo ADMIN——
Avviare un ordinePRODUCTION_MANAGERproduzione.ordini.completa—
Completare un ordinePRODUCTION_MANAGERproduzione.ordini.completaSì (password)
Avviare/chiudere una faseOPERATOR_PROD o PRODUCTION_MANAGERproduzione.fasi.avvia_completa—
Approvare un ECOQUALITY_MANAGER + utente diverso dal proponenteproduzione.eco.approva—
Applicare un ECOPRODUCTION_MANAGER—Sì (password)
Registrare un test qualitàQUALITY_MANAGERquality.test.registra—
Eliminare definitivamente dal cestino——Sì + solo SUPERADMIN

Audit log strutturato

Ogni transizione di stato critica viene registrata nella tabella LogProduzione con timestamp, utente, ruolo, IP, user-agent, evento, entità coinvolta, ID, dettaglio JSON specifico dell'evento e flag firmaElettronica. Il log non è cancellabile dall'interfaccia ed è consultabile dal SUPERADMIN nella pagina Cestino & Audit Produzione (tab "Log audit").

Come accedere al Cestino & Audit Produzione

La pagina del cestino unificato di produzione (route /produzione/cestino) raggruppa in un'unica vista i record soft-cancellati di distinte base, ordini di produzione, centri di lavoro e ECO, oltre al log degli eventi di produzione. Non è una voce del menu: si accede tramite il bottone secondario "🗑 Cestino & Audit" presente in alto a destra delle 3 liste:

  • Produzione » Distinte base » bottone "🗑 Cestino & Audit"
  • Produzione » Ordini produzione » bottone "🗑 Cestino & Audit"
  • Produzione » Centri di lavoro » bottone "🗑 Cestino & Audit"

Tutti e tre i bottoni puntano alla stessa pagina; al suo interno trovi i tab per ciascuna entità e per il log audit. Questo design contestuale evita che utenti senza interesse alla governance vedano la voce nel menu, e consente al gestore di aprire il cestino dal modulo di partenza.

⚠ L'eliminazione definitiva dal cestino di produzione è riservata al SUPERADMIN, richiede firma elettronica e non può essere delegata via privilegi o permessi del ruolo. ADMIN e PRODUCTION_MANAGER possono ripristinare dal cestino, mai eliminare in modo definitivo.
29Note operative (modulo Note trasversale)

Ogni ordine di produzione, distinta base, documento, soggetto e voce di catalogo ha un pannello Note floating ancorato all'entità corrente, utile per tracciare osservazioni, comunicazioni interne, promemoria operativi, anomalie riscontrate. Il pannello si presenta come un "post-it giallo" interattivo che galleggia sopra la pagina, ridimensionabile e trascinabile.

Dove si trova

  • Ordine di produzione — nella scheda dettaglio (entità ORDINE_PRODUZIONE)
  • Distinta base — nel form distinta (entità DISTINTA_BASE, solo dopo il primo salvataggio)
  • Documento — nel form di modifica documento (entità DOCUMENTO)
  • Soggetto — nella scheda soggetto (entità SOGGETTO, solo dopo il primo salvataggio)
  • Voce di catalogo — nel modale di modifica voce (entità CATALOGO)

Come si presenta e si usa

All'apertura della scheda il pannello appare minimizzato come fascia gialla 240×42 px ancorata alla topbar dell'app, centrata orizzontalmente. Per la modale Documento, la fascia si centra invece sulla barra blu della topbar del modale (a 4 mm dal bordo superiore della barra blu), affianco al numero documento. Al suo interno: icona post-it, titolo, contatore delle note esistenti, freccia expand_more.

Per espanderlo, clicca:

  • sulla freccia expand_more in alto a destra del pannello, oppure
  • su qualsiasi punto della fascia (titolo, area libera dell'header).

Espanso, il pannello si posiziona floating al centro del viewport (460×70vh di default, ridimensionabile). Mostra l'elenco note ordinato dalle più recenti, ciascuna con autore, data, eventuale flag "(modif.)", e icone modifica/elimina visibili solo al proprietario o ad amministratori.

Per scrivere una nota nuova: testo nel box giallino in alto + bottone + Aggiungi (sempre cliccabile, validazione testo non vuoto via snackbar) oppure scorciatoia Cmd/Ctrl + Invio.

Trascinare, ridimensionare, minimizzare, memoria posizione

  • Trascinare (espanso): afferra il pannello da qualsiasi punto della cornice gialla (header, area lista, sfondo) e spostalo dove preferisci nel viewport. Il cursore diventa grab/grabbing.
  • Trascinare (minimizzato): la fascia gialla è trascinabile come il pannello espanso. Spostandola, la posizione viene memorizzata in localStorage con chiave note-panel-pos:<ENTITA>:<ID>. Riaprendo lo stesso documento/ordine la fascia ricompare nella posizione che avevi scelto. Posizioni separate per ogni record (es. ordine #42 e ordine #43 hanno posizioni indipendenti).
  • Ridimensionare: handle nativo del browser in basso a destra del pannello espanso (clicca e trascina) per cambiare larghezza e altezza. Min 280×160 px, max larghezza 100% del viewport, max altezza 70% del viewport.
  • Minimizzare: freccia expand_less in alto a destra del pannello espanso, oppure click su area libera dell'header (titolo o sfondo). Il pannello torna fascia. Click "fantasma" dopo drag (entro 280 ms) automaticamente ignorato per non scatenare toggle accidentali al rilascio del trascinamento.

Cestino note (ADMIN/SUPERADMIN)

A pannello espanso, gli amministratori vedono un'icona delete_outline nell'header che apre la vista cestino: elenco delle note soft-cancellate (con sfondo rosa pallido, testo barrato e badge "🗑 cancellata gg/mm/aa"). Da qui è possibile ripristinarle con il bottone verde restore_from_trash. Si torna alle note attive con il bottone arrow_back.

Permessi di scrittura, modifica e cancellazione

OperazioneChi può farlaNote
Vedere le note Chiunque abbia accesso al workspace Le note sono filtrate per workspace dell'utente loggato.
Creare una nota Chi ha il permesso del ruolo note.crea attivo Configurabile per ogni (workspace, ruolo) dal SUPERADMIN. Di serie acceso ad ADMIN e OPERATOR, spento a USER (si accende dal pannello).
Modificare una nota Solo il proprietario o un ADMIN/SUPERADMIN L'icona "matita" appare solo se hai diritto.
Eliminare una nota Solo il proprietario o un ADMIN/SUPERADMIN Soft-delete: la nota resta in DB con cancellatoIl valorizzato e va nel cestino note (vista ADMIN).
Vedere e ripristinare il cestino Solo ADMIN/SUPERADMIN Toggle nell'header del pannello (delete_outline).

Audit log dei CRUD note

Ogni operazione sul modulo Note è tracciata in audit_log con utente, ruolo, IP, user-agent e snapshot prima/dopo. Azioni registrate:

  • CREATE_NOTA — alla creazione
  • UPDATE_NOTA — alla modifica del testo
  • DELETE_NOTA — al soft-delete
  • RESTORE_NOTA — al ripristino dal cestino

Consultabile dal Registro modifiche (Aziende & Licenze) filtrando l'entità note: per ogni riga si vede anche com'era la nota prima della modifica, e il testo di quelle cancellate.

Endpoint REST

  • GET /api/note?entita=ORDINE_PRODUZIONE&entitaId=42 — lista note ancorate a una specifica entità
  • GET /api/note/_/cestino — lista note soft-cancellate (solo ADMIN+)
  • POST /api/note body { testo, entita, entitaId } — crea (richiede note.crea)
  • PUT /api/note/:id body { testo } — modifica (proprietario o ADMIN+)
  • DELETE /api/note/:id — soft-delete (proprietario o ADMIN+)
  • POST /api/note/:id/ripristina — ripristino dal cestino (solo ADMIN+)

Schema dati

Tabella Note presente in tutti gli 8 DB workspace, con campi: id, testo, entita, entitaId, autoreId, autoreUsername, workspaceId, cancellatoIl, createdAt, updatedAt. Indici su (entita, entitaId), autoreId, workspaceId e indice parziale WHERE cancellatoIl IS NULL per le note attive. Entità supportate: DOCUMENTO, ORDINE_PRODUZIONE, SOGGETTO, DISTINTA_BASE, CATALOGO, GENERICO.

ⓘ Le note non sostituiscono l'audit log automatico (audit_log o LogProduzione) che registra eventi di sistema; sono pensate come annotazioni libere di tipo "post-it" che gli utenti scrivono e leggono spontaneamente.
30Conto lavoro — terzista e deposito

Il conto lavoro gestisce le lavorazioni affidate a un fornitore esterno (terzista): invio delle materie, lavorazione presso di lui, rientro del prodotto lavorato. Route base: /produzione/conto-lavoro; API /api/conto-lavoro.

Collegamento terzista al centro di lavoro

Nei Centri di lavoro, un centro di tipo ESTERNO può essere collegato a un Soggetto fornitore (campo soggettoId): rappresenta il terzista che esegue la fase. Il legame è salvato solo per i centri ESTERNO (per gli altri tipi viene azzerato lato backend).

Deposito «presso terzi»

Dal form del centro ESTERNO, il pulsante «Crea deposito conto lavoro» effettua un provisioning idempotente di un magazzino di tipo TERZISTA dedicato al fornitore (endpoint POST /api/magazzino/magazzini/deposito-terzista, codice TERZ-<fornitore>). È il contenitore logico della merce che si trova fisicamente dal terzista.

ⓘIl deposito TERZISTA riusa l'infrastruttura magazzino standard (giacenze, lotti, movimenti): non è una struttura separata, così tracciabilità e report restano unificati.
31Ordine di conto lavoro — workflow

Stati: PIANIFICATO → INVIATO → COMPLETATO (oppure ANNULLATO). L'ordine ha una testata (terzista, prodotto lavorato atteso, quantità, costo, date) e le righe materie da inviare.

AzioneEffetto magazzinoVincoli
Invia POST /:id/inviaPrelievo FEFO dai lotti interni (scarico) + trasferimento al deposito terzistaSolo da PIANIFICATO; ruolo PRODUCTION_MANAGER con produzione.ordini.completa; si ferma se nel magazzino interno la merce non basta
Registra rientro POST /:id/rientroCarico del prodotto lavorato nel magazzino interno con nuovo lotto; consumo delle materie presso terziSolo da INVIATO; ruolo PRODUCTION_MANAGER con produzione.ordini.completa; richiede firma elettronica (password)
Annulla POST /:id/annullaSe INVIATO: storno con ripristino dei lotti interni e disattivazione dei lotti presso terziNon consentito su COMPLETATO; ruolo PRODUCTION_MANAGER

Creare, modificare e cancellare un ordine di conto lavoro e collegare le fatture spetta all'amministratore; a chi non può, i pulsanti non compaiono. Anche quando un ordine di produzione ha una fase su un centro ESTERNO, l'ordine di conto lavoro si crea dalla pagina Conto lavoro: nella scheda dell'ordine di produzione non c'è un pulsante che lo generi dalla fase.

⚠Se nel magazzino interno la merce non basta, l'invio si ferma e dice cosa manca: non si spedisce merce che non c'è. Il rientro richiede la firma: è un movimento di carico certificato.
32Merce presso terzi, DDT e costo

Giacenza presso terzi (lotto per lotto)

All'invio, per ogni lotto interno prelevato NOX crea/aggiorna un lotto nel deposito terzista (numero CL<ordine>/<lotto>, campo lotti_magazzino.ordine_conto_lavoro_id). La pagina «Merce presso terzisti» (/produzione/conto-lavoro-giacenze, endpoint GET /api/conto-lavoro/giacenze-terzista) mostra la giacenza per terzista, materia e lotto. Il deposito è valorizzato: la merce entra al costo medio con cui è uscita dal magazzino interno (anche quella senza lotto, che compare come lotto CL<ordine>/NL). Al rientro i lotti vengono consumati (scarico dal deposito) e il loro valore entra nel costo del lavorato; all'annullo la merce torna nel magazzino interno e i lotti si chiudono.

DDT di conto lavoro

Il DDT che emettiamo noi (invio al terzista; reso al committente nel conto lavoro attivo) è un documento della serie dei DDT: POST /api/conto-lavoro/:id/ddt lo prepara in Documenti, in bozza, con causale CONTO_LAVORAZIONE, destinatario la controparte e le righe della merce (codice, lotto, scadenza) senza voce di catalogo, così l'emissione non muove di nuovo il magazzino. Si completa (vettore, colli, peso), si emette — il numero lo dà la serie — e si stampa col modello dell'azienda (DPR 472/1996 art. 1; DPR 441/1997). La fatturazione differita non propone da fatturare i DDT in conto lavorazione. Il DDT della controparte (rientro dal terzista, materie del committente) non si emette: se ne registra il numero.

Costo dalla fattura del terzista

Con «Collega fattura terzista» (POST /:id/collega-fattura) si aggancia una fattura passiva del fornitore: l'imponibile diventa il costo di lavorazione, che entra nel costo del prodotto lavorato al rientro (lavorato = materie consumate presso il terzista + lavorazione). Solo fatture ricevute dal terzista dell'ordine e non annullate; a lavorato già rientrato lotto, carico e giacenza si rivalutano della differenza; scollegando si torna al costo pattuito. Le fatture selezionabili arrivano da GET /api/sdi/passive?soggettoId=.

ⓘCiclo completo: crea ordine → invio (scarico interno, carico deposito terzi lotto per lotto, stesso valore) + DDT in Documenti → rientro con firma (consumo materie, carico lavorato a materie + lavorazione) → collega fattura (costo reale). Ogni passo è tracciato e reversibile fino al completamento.
33Backup dati

La scheda Backup dati nella barra in alto ti mette al riparo dall'unica cosa che non si rimedia: la perdita dell'archivio. Una copia contiene tutta la tua produzione — distinte base, cicli, ordini di produzione, MPS e MRP, dichiarazioni dal terminale, lotti e tracciabilità, controlli qualità, conto lavoro, magazzino e anagrafiche — e riporta il programma esattamente com'era nel momento in cui l'hai fatta.

Tre modi di fare una copia

  • Backup Manuale — il pulsante in alto. Da premere prima di ogni operazione delicata: una rigenerazione MRP, un'importazione massiva di distinte, un aggiornamento, una prova di cui non conosci l'esito.
  • Backup automatico — lo fa il server da solo, ogni notte, per tutte le aziende. Frequenza e giorni di conservazione li imposta il Super Amministratore, perché valgono per tutti; le copie più vecchie vengono eliminate da sole. Se una copia non riesce parte un'email all'indirizzo che imposta il Super Amministratore.
  • Copia automatica sul tuo computer — all'avvio del programma, al massimo una volta al giorno, il file viene scaricato in una cartella che scegli tu.
ⓘLe prime due copie restano sul server. La terza è quella che ti salva nel caso peggiore, perché il file finisce su una macchina diversa: attivala e scegli una cartella che venga a sua volta salvata (sincronizzata sul cloud, oppure su un disco esterno).

Rimettere indietro i dati

Si chiede all'assistenza: il ripristino di una copia lo fa il Super Amministratore, e il programma torna allo stato di quel momento.

⚠Il ripristino sostituisce tutto l'archivio: quello che è stato inserito dopo la data della copia viene perso — comprese le dichiarazioni di produzione fatte a terminale nel frattempo. Prima di ripristinare fai sempre un Backup Manuale dello stato attuale, così puoi tornare indietro anche da lì.

L'elenco in basso mostra le copie disponibili con data, dimensione e stato. Il pulsante Log esecuzioni apre lo storico e permette di verificarne l'integrità, per sapere che una copia è davvero valida e non un file troncato.

ⓘLa scheda è riservata a chi ha il permesso di backup, di norma il ruolo amministratore: chi lavora al terminale di reparto non la vede. Negli ambienti dimostrativi backup e ripristino sono disattivati di proposito.
FFAQ
Posso usare una distinta in stato BOZZA per creare un ordine?
No. Solo le distinte ATTIVE possono generare ordini di produzione. Cambia lo stato a ATTIVA quando la formula è verificata e pronta.
Cosa succede se modifico una distinta dopo aver creato ordini con la versione precedente?
Nulla di problematico. Ogni ordine memorizza il numero di versione usato al momento della creazione. La versione precedente resta archiviata in "Storico versioni" e l'ordine continua a fare riferimento ai dati corretti.
Posso modificare le righe di un ordine già creato?
No, le righe (componenti) non sono modificabili sull'ordine: vengono "fotografate" dalla distinta al momento dell'avvio. Puoi modificare la testata (qty prevista, data inizio, note) solo finché lo stato è PIANIFICATO, dalla sezione Modifica testata del dettaglio: lo fa l'amministratore o il responsabile di produzione col permesso «completa ordini». Per cambiare i componenti devi annullare l'ordine, modificare la distinta, e creare un nuovo ordine.
Cosa succede se le giacenze di una materia prima sono insufficienti?
L'ordine si avvia lo stesso, dopo una conferma che elenca cosa manca: il magazzino di quelle materie scende fino a zero (non sotto) e la parte mancante resta scritta sull'ordine come consumo da spiegare. Verifica prima la disponibilità: aprendo un ordine PIANIFICATO il controllo giacenze (sez. 14) ti dice cosa manca.
Posso eliminare definitivamente un ordine annullato?
Un amministratore può cancellare gli ordini in stato PIANIFICATO o ANNULLATO con il pulsante "cestino" nella lista: finiscono nel cestino della produzione, da cui si ripristinano; l'eliminazione definitiva la fa solo il Super Amministratore, con la firma. I movimenti di storno restano comunque in magazzino per audit trail.
Come si calcola il costo del prodotto finito?
Allo scarico (all'avvio, o al completamento in BACKFLUSH) ogni materia esce al suo costo medio di magazzino e l'ordine ne somma il valore. Al completamento il costo unitario del prodotto finito è: (costo materie + costo delle fasi completate) ÷ quantità effettivamente prodotta, al netto della quota data ai by-product. Questo è il costo memorizzato nel movimento di carico. I costi li vede solo chi ha il permesso «Vedere costi e margini».
L'esplosione distinta vede gli ordini di produzione futuri?
No, l'esplosione è puramente sulla distinta (formula). Per pianificazione MRP / fabbisogno totale tenendo conto degli ordini futuri usa l'MRP (scheda MRP; nel gestionale completo Produzione → MRP — Fabbisogno).
Posso fare partial-completion (completare solo metà dell'ordine)?
Non in questa versione. Un ordine si completa con un'unica operazione. Se serve frazionare la produzione di un grosso lotto, crea più ordini distinti con quantità minori.