Tutto quello che vi ho raccontato nei due precedenti articoli è senza dubbio di estrema utilità, dato che ha la pretesa di spiegare come descrivere informaticamente la situazione dei vostri materiali in azienda (con il REG, record elementare di giacenza), e come registrare, sempre informaticamente, gli eventi che la modificano (con i movimenti di magazzino).

Software di Logistica? Non ancora…

Mi dispiace deludervi: come vi avevo preannunciato, questa non è (ancora) logistica informatica, ma semplice gestione di magazzino informatica (la comunicazione al nostro sistema di aver eseguito un’azione sui materiali: spostati, consumati o prodotti).

La logistica senza aggettivi è un processo che comprende la decisione di cosa fare a fronte di un’esigenza (logistica decisionale) e la sua esecuzione (logistica fisica); la logistica informatica ne può far parte.

Vediamo un esempio:

  • mi serve un barattolo di vernice nocciola per pitturare questo sportello (esigenza);
  • decido di prenderlo dall’ubicazione 003-01-04, dove so che ce n’è uno da tanto tempo (logistica decisionale, se operata con l’aiuto del calcolatore è logistica informatica)
  • vado a prenderlo (logistica fisica, eventualmente accompagnata da gestione di magazzino informatica, se registro lo spostamento);
  • lo consumo (produzione);
  • registro nel sistema che l’ho consumato (gestione di magazzino informatica).

Quando si ha a che fare con materiali in azienda si fa comunque logistica decisionale (li si sposta a ragion veduta, non certo a caso, a meno di delegare al caso le scelte da prendere, che può essere un modo di affrontare i problemi di una certa validità).

I due momenti (decisione e azione) possono essere talmente vicini da sembrare indistinguibili: mi serve dell’olio che verso dalla bottiglia nel mio piatto d’insalata. In realtà, per prima cosa ho spostato lo sguardo verso la bottiglia (decisione), l’ho presa in mano e l’ho portata sopra il piatto (azione), e ho versato qualche goccia (consumo di produzione).

Nella logistica informatica ci concentriamo su questo tema: dove registrare tutte le decisioni, e magari come farci aiutare da un algoritmo a prendere quelle giuste (o almeno quelle meno sbagliate).

Prima di addentrarci in questo argomento, mi corre l’obbligo di una piccola precisazione. L’informatica può aiutarci anche nella logistica fisica, sostituendosi a uno di noi nell’eseguire questo processo (ad esempio un carrello che va a prendere dall’ubicazione del quarto piano il barattolo di vernice e lo porta a chi lo utilizza). Questa materia è automazione industriale applicata alla logistica, di cui non ci occuperemo, essendo prevalentemente pertinenza dell’hardware che la esegue: magazzini automatici, veicoli a guida automatica (AGV), ecc., a cui diamo le istruzioni e ci aspettiamo che facciano il loro dovere.

Ed eccoci al dunque, dopo troppe chiacchiere.

Software di Logistica

Ci serve qualche cosa che contenga tutte le informazioni di un movimento di magazzino, in modo da mettere in grado un magazziniere (o un’apparecchiatura meccanica) di poterlo eseguire fisicamente. Abbiamo, com’è ovvio, creato un nuovo oggetto: la Richiesta Di Movimentazione (in breve RIM).

Il punto di partenza è sempre una necessità:

  • ho qui qualcosa (che mi è arrivato da fuori, o che ho appena prodotto), ditemi dove devo portarlo perché qui è d’ingombro;
  • mi serve qualcosa, c’è il camion che sta partendo, oppure la pressa è ferma perché non ha materiale, su, sbrigatevi!

La RIM contiene tutte le informazioni per eseguire un trasferimento tra due REG (chi ha bisogno di un ripasso vada a rileggersi il post Argilla, nodi e silicio – Software per Logistica – parte 2):

  • la parte comune: articolo e quantità;
  • l’origine (REG_D);
  • la destinazione (REG_A).

Le REG_D e REG_A, a loro volta, contengono, rispettivamente le informazioni del REG di origine e di quello di destinazione:

  • Plant;
  • Causale (per eseguire il movimento di magazzino);
  • Area (derivata dalla causale);
  • Tipo giacenza (derivata dalla causale);
  • Codici 1 / 4;
  • Contenitore.

In questo modo la RIM può rispondere a tutte le domande “classiche” per cui i REG si sono preparati:

  • Quant’è: la quantità della RIM
  • Che cos’è: l’articolo, accompagnato da lotto, esponente di modifica, configurazione, fase, che sono gli stessi nel REG_D e nel REG_A: si esegue un trasferimento, non una trasformazione (che avverrebbe se variasse uno di questi oggetti).
  • Di chi è: in questo caso, se il proprietario è un cliente o un fornitore, deve rimanere uguale tra il REG_D e il REG_A: se cambiasse deve intervenire una fattura (rispettivamente di acquisto o di vendita), e non ci si può accontentare di una RIM.

Diverso il caso della commessa: essendo una variazione di proprietà gestionale e non contabile, la si può eseguire con una RIM. È il caso dei “furti” tra commesse: prendo il materiale della commessa A e lo utilizzo per la commessa B. Se sono diligente prima eseguo la RIM di trasferimento di proprietà, in modo che di questo “reato” ne tengono traccia i movimenti di magazzino.

  • Dov’è: plant, area, ubicazione, risorsa: sono il cuore del trasferimento. Almeno una di queste informazioni dovrà essere diversa tra REG_D e REG_A, per non ottenere l’effetto di qualcosa che si sposta rimanendo fermo.
  • In che cos’è: il contenitore. In questo caso normalmente rimane lo stesso nei due REG: l’oggetto che trasferisco è fisicamente il contenitore, con l’effetto di trasferire il suo contento. Se invece utilizzo le RIM per suddividere o accorpare contenitori, le uniche informazioni che varieranno nei REG saranno i contenitori e le quantità.

Prima di entrare nel vivo, accenno ad un altro oggetto: le Testate delle richieste di movimentazione (le TRIM). Una TRIM raggruppa più RIM che hanno un’origine o una destinazione in comune (tutte le righe dello stesso ricevimento o della stessa spedizione, tutti i materiali necessari per lo stesso ordine di produzione).

La TRIM, in termini logistici, è una missione, un’azione cumulativa di prelievo o di versamento. Per razionalizzare l’operatività, possiamo introdurre un campo in ogni RIM con cui ordinarle, in modo da scegliere, per una missione, il percorso più breve, senza dover andare su e giù per l’azienda per metà pomeriggio.

La modalità operativa di utilizzo di una RIM è la seguente: la si crea (a partire da un’esigenza) compilando una delle due sezioni (REG_D o REG_A); tramite una funzione di assegnazione, si scrive l’altra, in modo da completare tutte le informazioni necessarie al trasferimento per passarle a chi lo esegue fisicamente, ed essere poi in grado di registrare in modo automatico (tramite la funzione di esecuzione), a partire dalla RIM, il movimento di magazzino.

Vediamo alcuni esempi: per ora non ci preoccupiamo di come vengono eseguiti, ci accontentiamo di evidenziare le informazioni aggiunte dall’assegnazione, segnalandole su sfondo giallo.

Ho 50 pezzi di un articolo, nel piazzale (area PL), che mi è appena arrivato, l’assegnazione aggiorna la RIM con le informazioni dei dove devo spostarli (in questo caso l’ubicazione UB00):

Tipo RIM      Quantità        Area-Da         Ubicazione-A

Master                  50                     PL                         UB00

Se i 50 pezzi non ci stanno tutti in un’ubicazione, ognuna delle quali ne può contenere al massimo 20, l’assegnazione deve spezzare la RIM di partenza (master), che rimane a livello informativo, e suddividerla in tre RIM (slave), ciascuna con la quantità da trasferire in un’ubicazione:

Tipo RIM      Quantità        Area-Da         Ubicazione-A

Master                  50                     PL

Slave                     20                     PL                       UB01

Slave                     20                     PL                       UB02

Slave                     10                      PL                      UB02

Se invece devo portare 30 pezzi in produzione (Area PR) scegliendo i lotti con scadenza più prossima, l’assegnazione darà questo risultato (assumendo che i codici dei lotti siano in ordine crescente della loro scadenza):

Tipo RIM      Quantità        Ubicazione-Da          Lotto-Da        Area-A

Master                  30                                                                                       PR

Slave                     15                        UB01                            LT01                 PR

Slave                     10                       UB02                            LT02                PR

Slave                     5                         UB01                             LT03                PR

Notate una particolarità di questo trasferimento. L’ubicazione UB01 contiene più di un lotto, ma, essendoci dati la regola di prelevare i lotti più vecchi, dobbiamo prenderne un po’ anche dall’ubicazione UB02, anche se nell’UB01 ci fossero stati 15 pezzi di LT03, sufficienti per completare la quantità richiesta. Avremmo potuto utilizzare un’altra regola: prendi il lotto più vecchio e vedi se nella stessa ubicazione ce n’è un altro che ti è sufficiente. Però questo secondo lotto potrebbe avere una scadenza molto più lontana, e quindi si potrebbe introdurre un’ulteriore regola, che stabilisce un intervallo di giorni all’interno dei quali si considerano i lotti contigui da trasferire…

Questa è la logistica, ragazzi.

Come potete capire, l’assegnazione eseguita manualmente richiede uno sforzo non indifferente per andare a caccia delle in formazioni che ci servono, oltre alla possibilità di trasgredire involontariamente alle regole che ci siamo imposti: la si utilizza quindi soltanto per trasferimenti elementari.

Nel prossimo articolo vedremo come potremo risparmiarci un po’ di fatica, delegando il completamento delle RIM ad un particolare processo informatico: il motore inferenziale. Non preoccupatevi: sarà un po’ più complicato di quanto il nome promette.

Guido Galdini
Specialista Sme.UP ERP – smeup

Naviga per categoria:

Seleziona una categoria d’interesse dal nostro magazine