Lo stock stesso. Questo stock è materializzato, nel database, da registrazioni nella tabella STOCK. Ciascuna di queste registrazioni, corrisponde ad una riga di stock. Le regole di gestione di queste righe sono dettagliate in un allegato tecnico. Ad un certo articolo, in un certo deposito, corrisponde un insieme di righe di stock, caratterizzate da attributi (lotto, stato, ubicazione…) diversi. Ogni riga di stock include una quantità globale (il valore, che serve da base per il calcolo del valore fiscale dello stock, è memorizzato in altre tabelle).
Il registro dei movimenti di stock. Materializzato nel database da registrazioni nella tabella STOJOU e STOJOUVAL, permette di ritrovare, in modo cronologico, i movimenti effettuati, siano essi in quantità (entrata, uscita, o movimenti interni) o soltanto in valore (deprezzamenti, regolarizzazioni diverse: bisogna notare che il campo quantità è indicato anche se il movimento non modifica la quantità in stock, perchè nel caso dei movimenti in valore, è importante sapere su quale quantità incide il cambio di valore). Ogni registrazione di questo giornale include le caratteristiche della riga di stock movimentata senza vertere formalmente su di essa, e punta anche su un movimento d'origine che la giustifica (documento e riga di documento all'origine del movimento: bolla di consegna, avanzamento materiale, bolla di ricevimento…). Ciascun movimento contiene due valori: il valore di movimento, determinato a partire dalle regole parametrizzabili, che influisce sul valore globale dello stock presente sulle righe, ed il valore presente sul documento d'origine. Se il metodo di valorizzazione comporta due metodi, questi valori sono presentati per entrambi i metodi.
La tabella dei lotti. Materializzata nel database da registrazioni nella tabella STOLOT, essa associa ad un certo lotto ed articolo, delle caratteristiche di default (di tutti i depositi) e contiene un totale delle quantità ed un valore indicativo (espresso in valuta di reporting).
Una tabella di totali articolo/deposito, denominata ITMMVT, che contiene un totale delle quantità per stato (A,Q,R), e per situazione (interno, a corridoio, pronto, allocato, in conto lavoro...) così come dei totali (in valore, in quantità) che permettono di effettuare il calcolo del prezzo medio ponderato. Essa include anche dei valori come l'ultimo prezzo di acquisto, l'ultimo prezzo di entrata, la data di ultima entrata e l'ultimo documento. Le informazioni che essa include sono ridondanti: può essere ricostituita, per un certo articolo e deposito, ripartendo dagli ultimi valori di inventario e leggendo il giornale di magazzino.
Una tabella di totali articolo/deposito per mese, denominata ITMMVTHIS, che contiene dei totali per periodo e per esercizio contabile. Questa tabella è aggiornata in funzione della data di imputazione di ciascun movimento.
Una tabella che memorizza gli elementi necessari alla gestione della sequenza FIFO o LIFO, denominata STOCOST, contenente, per ciascun articolo e deposito, un insieme di righe caratterizzate da una quantità ed un valore globali. E' importante notare che questa tabella serve alla valorizzazione FIFO o LIFO, ma che non ha alcun collegamento con delle ubicazioni fisiche o dei lotti specifici.
Una tabella che giustifica gli stock allocati, denominata STOALL, che permette di giustificare le quantità allocate ed in rottura, su ciascun articolo e deposito.
Il seguito di questo documento dettaglia il modo in cui i movimenti vengono registrati sul database, focalizzandosi in particolare, sul modo in cui le basi di valorizzazione utilizzate per il prezzo medio ponderato e il FIFO/LIFO vengono aggiornati. I calcoli effettuati dipendono dal metodo di valorizzazione utilizzato. Questo metodo è definito da un insieme di regole collegate ad un codice identificativo. Questo codice è associato all'articolo/sito, e tale valore inizializzato a partire dalla categoria di articolo.
Un movimento di stock è giustificato da una determinata riga su un documento di origine (che può essere, ad esempio, un avanzamento di produzione, una bolla di ricevimento, una bolla di consegna, una distinta di inventario...). La sua registrazione creerà almeno una riga nel giornale di magazzino (ce ne saranno molte se la riga in questione movimenta più lotti, o più unità, o delle matricole...).
Questo documento di origine comporta in principio, una quantità ed un valore (a volte, uno dei due soltanto). Nel giornale di magazzino, si ritrovano due valori: il valore presente sul documento di origine, ed il valore di movimento, determinato in funzione delle regole parametrizzabili (tra le quali figura la possibilità di riprendere il valore del documento d'origine).
Fiscalmente, si utilizza un metodo di valorizzazione degli stock che può essere Prezzo standard, Prezzo standard attualizzato, PMP, FIFO o LIFO. Secondo i paesi e le condizioni, certi metodi possono essere o non essere ammessi, queste scelte devono quindi essere validate da un esperto contabile. Questa regola di valorizzazione può variare in funzione dell'articolo, ed anche della coppia articolo/sito. Ciò può essere ammissibile in casi eccezionali (ad esempio, in società diverse), ma in regola generale, si sceglieranno delle regole giustificabili fiscalmente e quindi, per principio, il più possibile omogenee.
Di default, una volta che questa regola di valorizzazione fiscale è stata scelta, la variazione di valore dello stock durante un movimento, segue la semplice regole seguente (che esiste allo stesso modo per le quantità):
valore finale = valore iniziale + valore del movimento
Il valore del movimento ha ovviamente un segno (negativo in uscita, positivo in entrata). Dal momento in cui questa regola viene seguita, ed i valori dei movimenti sono registrati nel giornale, è comprensibilmente facile, se si decide di contabilizzare i movimenti di stock partendo dal giornale di magazzino, disporre sempre di un'immagine esatta del valore fiscale degli stock in contabilità. Va inoltre notato che questa contabilizzazione può essere fatta in modo superficiale ogni volta che un movimento viene effettuato, o in modo più completo (fine giornata, fine periodo, addirittura su richiesta).
La regola di calcolo di valore si applica facilmente al momento di un uscita, e si applica senza eccezioni: il metodo di valorizzazione degli stock permette di associare un valore alla quantità evasa, e diminuisce altrettanto il valore residuo dello stock. Questo valore è ottenuto sia partendo dal prezzo medio ponderato del sito (si diminuisce il valore globale dello stock in proporzione alla quantità evasa), sia decrementando i livelli della sequenza di prezzo del sito secondo l'ordine utilizzato (FIFO o LIFO), sia utilizzando il Prezzo standard o il Prezzo standard attualizzato associato al sito. Al fine di gestire i casi eccezionali in cui un prezzo nullo è generato da questo calcolo, è previsto un Valore di rimpiazzo.
In entrata, il principio di base consiste nell'incrementare lo stock in quantità ed in valore (si aggiornerà la sequenza FIFO/LIFO, e la quantità ed il valore dell'articolo/sito che serve al calcolo del PMP partendo dall'importo dell'ordine). Il valore di entrata del movimento è determinato in funzione di una regola (definita per articolo/sito) che può essere Costo standard, Costo standard attualizzato (i valori di entrata sono dunque fissi per un determinato periodo), oppure Prezzo ordine (si riprende allora il valore del documento di origine). Anche in questo caso, è previsto un valore di rimpiazzo se il valore ottenuto è nullo. Ma le regole precise di calcolo del valore dello stock, consecutivamente ad un entrata, sono un pò più complesse, e ciò per due ragioni:
innanzitutto perchè il valore del movimento può non essere perfettamente conosciuto nel momento in cui il movimento viene registrato. Tuttavia, il movimento sarà registrato con un valore stimato, ma sarà possibile, quando il valore effettivo del movimento sarà conosciuto, dover realizzare delle regolarizzazioni a posteriori (descritte più avanti in questo documento). Queste regolarizzazione si tradurranno in righe supplementari nel giornale di magazzino. Queste righe saranno anche contabilizzate se viene utilizzata l'interfaccia contabile degli stock.
In seguito, poichè per alcuni tipi di movimenti straordinari, capita che si voglia utilizzare una regola di valorizzazione che non sia quella definita di default per le uscite. Ciò si può parametrizzare grazie ad un riquadro di eccezioni (questa regola sarà allora associata ad un tipo di uscita, addirittura anche ad un sotto tipo identificato da un codice presente nella transazione di stock). Questo tipo di entrata straordinaria, può avere delle incidenze contabili, più specificatamente se il movimento di origine ha un valore diverso dal valore di entrata considerato. Dato che i due valori sono memorizzati nel giornale di magazzino, è possibile parametrizzare la loro contabilizzazione.
La tabella STOJOUVAL contiene l'insieme delle informazioni di valorizzazione di movimento di stock. Permette in particolare di memorizzare la scomposizione dei costi. Ecco un dettaglio dei differenti campi disponibili:
I totali di valore esistenti nelle tabelle sono di due tipi: da una parte la sequenza FIFO/LIFO, dall'altra il totale in valore della tabella ITMMVT che permette di calcolare il prezzo medio ponderato. In entrambi i casi, si tratta di totali mantenuti aggiornati sito per sito. La valorizzazione globale per una società è ottenuta mediante totalizzazione dei valori dei diversi siti, ed il PMP globale di una società mediante media ponderata dei diversi prezzi medi ponderati di ciascun sito.
Su un sito, la base di calcolo del prezzo medio ponderato è aggiornata in modo molto semplice:
in entrata, si somma il valore di entrata con il valore corrente dello stock (e si fa lo stesso con le quantità)
in uscita, si diminuiscono le quantità e si aggiorna il valore dello stock in proporzione alla quantità evasa.
L'aggiornamento della sequenza FIFO / LIFO si fa per sito nel seguente modo:
in entrata, si crea un livello della sequenza, per ciascun movimento di entrata, con le quantità sommate e il prezzo corrispondente.
in uscita, si diminuisce l'ultimo od il primo livello della sequenza a seconda del caso.
E' importante notare che questa gestione di valore si fa in modo indipendente dalla gestione fisica. In altre parole, anche se un articolo è perfettamente identificato (dalla sua matricola ad esempio, ) è può non essere il primo entrato nonostante si lavori in FIFO, il valore di uscita non viene mai ripreso partendo da un valore di origine, ma seguendo la regola di valorizzazione delle uscite.
Al contrario, nel caso di un entrata su reso merce, poter stornare il movimento d'origine permette, secondo la parametrizzazione, di riprendere il prezzo del movimento d'origine; se la parametrizzazione dei valori di entrata richiama il prezzo dell'ordine, sarà dunque perfettamente coerente. Allo stesso modo, un trasferimento da un sito ad un altro, crea due movimenti speculari (un movimento di uscita ed uno di entrata). Se l'entrata avviene al Prezzo dell'ordine, si avrà dunque un trasferimento che si farà ad un prezzo identico da una parte e dall'altra.
Alcuni movimenti possono essere annullati dopo essere stati registrati. Questo tipo di caso è trattato nel seguente modo:
la cancellazione di un'entrata è possibile solo se lo stock, le cui caratteristiche corrispondono all'entrata, è sempre disponibile. Dal punto di vista della valorizzazione, si tratta questa cancellazione come un'entrata negativa, vale a dire che si realizza il movimento al contrario. Inoltre, le registrazioni del giornale di magazzino corrispondenti al movimento d'origine ed al suo annullamento, vengono contrassegnate (un flag chiamato REGFLG viene posizionato a 2).
la cancellazione di un uscita è possibile solo se c'è ancora spazio disponibile nell'ubicazione da cui sono usciti gli articoli. Dal punto di vista della sequenza FIFO, non è necessariamente possibile ristabilire esattamente la situazione, poichè i livelli di sequenza svuotati vengono man mano cancellati. Nel peggiore dei casi, si ricrea un livello di sequenza FIFO che assume il valore dell'uscita (che può essere d'altronde una media ponderata di due livelli di sequenza che sono stati cancellati nel frattempo).
La modifica di un movimento (sia cambiando le quantità che si trattano o il valore) viene trattata mediante annullamento e ricreazione, tenendo conto dei controlli precedentemente definiti.
La regolarizzazione di un movimento corrisponde al caso in cui un movimento, registrato con un certo valore ed in un certo momento, vede cambiare il proprio valore in seguito alla registrazione di un altro documento (e non mediante modifica del documento di origine).
Ecco degli esempi di casi concreti:
E' stato registrato un ricevimento fornitore ad un certo prezzo, la fattura arriva con un prezzo diverso.
Registrata la fattura fornitore, si riceve una fattura complementare (spese di dogana, fattura trasportatore) da ripartire sugli articoli ricevuti (ciò può avvenire a più riprese sugli stessi articoli ricevuti).
E' stata fatta una dichiarazione di produzione che ha dato vita ad entrate al prezzo calcolato partendo dai dati tecnici, un calcolo di prezzo di costo stabilisce un prezzo di entrata definitivo che è diverso.
Nel caso particolare della sovrafatturazione (la quantità fatturata è maggiore della quantità ricevuta), si considera che si verificheranno altri ricevimenti e che questi assorbiranno l'importo supplementare legato alla quantità supplementare fatturata. In questo caso, solo la differenza di prezzo per quantità e gli elementi di fatturazione sono integrati sul primo ricevimento.
Si prenda il seguente esempio:
In tutti i casi, queste regolarizzazioni vengono effettuate creando delle registrazioni complementari nel giornale di magazzino. Bisogna notare che si possono impedire le regolarizzazioni di prezzo in entrata per alcuni articoli (il flag Regolarizzazione (sì/no) è définito nella parametrizzazione dei metodi di valorizzazione). Resta il fatto che se si effettua questa regolarizzazione, la si fa nella maniera seguente:
Prendiamo un esempio :
Un delta di inventario positivo viene trattato come un'entrata al contrario, uno delta di inventario negativo viene trattato come un'uscita. Oltre al riaggiornamento delle quantità in stock e loro riaggiustamento nei dettagli delle righe di stock e dei totali di lotti, questo delta ha un incidenza sulle basi di valorizzazione. La parametrizzazione dei metodi di valorizzazione permette di definire i valori di delta di inventario positivi o negativi in modo diverso da quello di un'entrata o di un'uscita normale. Va notato che la validazione di un inventario passa non solo nel giornale di magazzino dei movimenti di delta, ma crea anche delle registrazioni che forniscono il dettaglio di ciascuna riga di stock.