Scusate, forse sono OT ma non sapevo dove postare vorrei creare una stored procedure per gestire l'utilizzo dei lotti di produzione, mi spiego: partendo da una quantità richiesta in un ordine, io devo andare a recupeare le quantità dai lotti presenti a magazzino.
Quindi, procedo per steps:
Recupero tutte le mie disponibilità di lotti
SELECT LottoProduzione, (Qta-QtaConsumataLotto) AS Qta FROM TabLotti WHERE (IDArt = XXXX) ORDER BY Data ASC
Faccio (Qta-QtaConsumataLotto) AS Qta perchè per ogni lotto caricato a magazzino indico anche le quantità già utilizzate nell'evasione di altri ordini (QtaConsumataLotto)
In funzione di una variabile che passerò alla Stored procedure
@QtRichiesta int
conosco la quantità richiesta per uno specifico articolo (dato che eseguirò questa SP per ogni articolo dell'ordine)
Devo fare un insert (in una seconda tabella) di tutte le righe, ad esaurimento, che raggiungono la mia @QtRichiesta
Quindi praticamente:
se la prima select mi ritorna dei record di questo tipo
Lotto - Qt
00012006 4
00052006 2
vuol dire che per l'articolo indicato ho 6 disponibilità di 2 lotti differenti
se la mia @QtRichiesta è 5
devo inserire nella mia tabella di appoggio
00012006 4
00052006 1
partendo ovviamente dal record (lotto) piu vecchio (00012006) fino al piu recente (infatti ho ordinato la select in questo modo)
tutto questo per sapere quali lotti utilizzare e le quantità da utilizzare per ogni lotto
Spero di essere stata chiara... io ci ho provato ma mi perdo in quanto non saprei come "iterare" nei risultati della mia select per recuperare SOLO le quantità che soddisfano la mia quantità richiesta!
Grazie per l'aiuto