Ho un Array memorizzato in una variabile session, nel quale aggiungo degli articoli con le relativa quantità e prezzi. Il problema nasce quando aggiungo uno stesso articolo e mi deve aggiornare le quantità. Invece di aggiungere la quantità a quella già esistente tramite la variabile 'qta' richiamata dal campo quantità di un form me la concatena come se fosse una stringa.
Per maggior chiarezza posto il codice:
Come si puònotare all'inizio raccolgo la quantità dal form e poi sotto la aggiungo alla quantità già esistente se lo stesso articolo è gia presente nella session.codice:qta = Request("qta") ' Definizioni delle costanti CONST CARTPCOD=0 CONST CARTPDESC=1 CONST CARTPCONF=2 CONST CARTPREP=3 CONST CARTPIVA=4 CONST CARTPPRICE=5 CONST CARTPQUANTITY=6 ' Creazione del box IF NOT isArray(Session("box")) THEN DIM localBox(7, 20) ELSE localBox=Session("box") END IF ' Aggiunta dell'articolo al box IF codice <> "" THEN foundIT = FALSE FOR i=0 TO UBOUND(localBox) IF localBox(CARTPCOD, i) = codice THEN localBox(CARTPQUANTITY, i)= localBox(CARTPQUANTITY, i) + qta foundIT=TRUE EXIT FOR END IF NEXT IF NOT foundIT THEN FOR i=0 TO UBOUND(localBox, 2) IF localBox(CARTPCOD, i )="" THEN localBox(CARTPCOD, i )=codice localBox(CARTPDESC, i )=desc localBox(CARTPCONF, i )=conf localBox(CARTPREP, i )=reparto localBox(CARTPIVA, i )=iva localBox(CARTPPRICE, i )=prezzoList localBox(CARTPQUANTITY, i )=qta EXIT FOR END IF NEXT END IF END IF
Il problema è che così facendo invece di sommarla me la concatena.
ES: se ho già quantità 1 dell'articolo x e aggiungo quantità 2 sempre di questo articolo invece di sommare e darmi 3 mi fa 1+2=12
Come mai????
:master:

Rispondi quotando
