devo per forza di cose ciclare su una lista di record ed inserirli in un'altra tabella, viste le tipologie di campo non posso fare una insert into (ho valori con virgola che mandano in errore la procedura) quindi provo con un classico addnew.
Il problema è appena tento di eseguirlo mi restituisce un bell'errore 500, anonimo come pochi!!

Qualcuno vede dove sbaglio??
il codice:

if ucase(request.Form("invia"))= "COMPLETA" then

SQL = "INSERT INTO OrdiniOnline( ente, referente, cap, localita, indirizzo, provincia, telefono, email, piva) SELECT ente, referente, cap, localita, indirizzo, provincia, telefono, email, piva FROM testata_carrello WHERE id_sessione =" & session.SessionID
Conn.execute(SQL)
id="select top 1 * from OrdiniOnline order by idordine desc "
Set objRSIncremento = Server.CreateObject("ADODB.Recordset")
objRSIncremento.Open id, ConnServer2003

AutoIncremento = objRSIncremento(0)
Response.Write AutoIncremento &"
"& session.SessionID
objRSIncremento.Close
set objRSIncremento = nothing

SQL1 = "SELECT * FROM carrello WHERE sessione=" & session.SessionID
Set ObjCarrello = Server.CreateObject("ADODB.Recordset")

ObjCarrello.Open SQL1, ConnServer2003
do until ObjCarrello.eof
sessione = ObjCarrello("sessione")
prodotto = ObjCarrello("prodotto")
licenza = ObjCarrello("licenza")
prezzo = ObjCarrello("prezzo")
quantita = ObjCarrello("quantita")
lingua = ObjCarrello("lingua")


strsql2="select * from righeordinionline"
Set rst3 = Server.CreateObject("ADODB.Recordset")

rst3.open strsql2, ConnServer2003

rst3.addnew
'rst3("idordine")= AutoIncremento
rst3("prodotto")= "prova"
'rst3("licenza")=licenza
'rst3("prezzo")= prezzo
'rst3("quantita")= quantita
'rst3("lingua")= lingua
rst3.update

ObjCarrello.movenext

loop
ObjCarrello.close
end if