Salve.

Sono qui a chiedervi possibili soluzioni a questo problema.

In una tabella chiamata SCORTE ho una serie di prodotti di cancelleria; questa tabella SCORTE si alimenta tramite il caricamento delle fatture d'acquisto.

I fornitori da cui acquistiamo sono diversi e ci possono vendere lo stesso prodotto che viene codificato con uno stesso codice interno, ad esempio in SCORTE potrò avere:

Codice = CD43
Descrizione = matita bicolore
Quantità = 15

Codice = CD43
Descrizione = matita bicolore
Quantità = 50

....

Cioè enne Codice = CD43 matite bicolore quante sono i fornitori da cui sono state comprate.

Fatta questa premessa, veniamo al problema:

Lo scarico delle quantità delle SCORTE avviene tramite un file excel compilato dai vari operatori che così scaricano le SCORTE una volta a settimana e non tutti i giorni.

Quando però avviene questo scarico automatico se nel file excel ho:

Codice = CD43
Descrizione = matita bicolore
Quantità_da_scaricare = 3

La query di aggiornamento, prevista all'interno di un loop:

codice:
   SQL_UPDATE = " UPDATE "
   SQL_UPDATE = SQL_UPDATE & " SCORTE "
   SQL_UPDATE = SQL_UPDATE & " SET "
   SQL_UPDATE = SQL_UPDATE & " Q = " & replace(Q_DA_FILE_EXCEL, ",", ".") & " "
   SQL_UPDATE = SQL_UPDATE & " WHERE "
   SQL_UPDATE = SQL_UPDATE & " CODICE = '" & Rs("CODICE") & "' "
   objconn.Execute(SQL_UPDATE)
La Quantità_da_scaricare = 3 sarà sottratta per due volte dalla tabella SCORTE perchè in tabella SCORTE si trovano:

Codice = CD43
Descrizione = matita bicolore
Quantità = 15

Codice = CD43
Descrizione = matita bicolore
Quantità = 50

Quindi mi troverò con:

Codice = CD43
Descrizione = matita bicolore
Quantità = 15 - 3 = 12

Codice = CD43
Descrizione = matita bicolore
Quantità = 50 - 3 = 47

Il che non è vero... ossia è sbagliato perchè dovrebbe essere :

Codice = CD43
Descrizione = matita bicolore
Quantità = 65 - 3 = 62


Cosa consigliate di fare per risolvere il problema ??
Gracias....
ER