In un programma per il caricamento dati di immagini ho un RecordSet che apro in questo modo:
(lo dichiaro nella parte generale di un form Dim RSIMG As ADODB.Recordset)
SQL = "SELECT * FROM caricoIMG WHERE batch=" & Batch & " ORDER BY imgOriginale, FronteRetro"
Set RSIMG = CreateObject("adodb.recordset")
RSIMG.CursorLocation = adUseClient
RSIMG.CursorType = adOpenDynamic
RSIMG.LockType = adLockOptimistic
RSIMG.Open SQL, CONN
CONN è la connessione a un db access che è dichiarata in un modulo: Global CONN As ADODB.Connection e che apro:
Set CONN = CreateObject("ADOdb.connection")
CONN.Open ("Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & PercorsoDB).
Il recordset in questione ha un elenco di campi che con alcuni pulsanti del mio form scorro in avanti e indietro con i metodi RSIMG.MoveNext e RSIMG.MovePrevious visualizzando i valori all'interno di oggetti textbox.
Con un pulsante modifico il campo di nome FronteRetro che mi indica se il record visualizzato mostra un immagine che è il fronte di un foglio di carta o il suo retro, il codice che uso è:
RSIMG("fronteRetro") = 1
Progressivo = RSIMG("progressivo")
RSIMG("progressivo") = 0
RSIMG.Update
Praticamente io mi sposto all'indietro di un record nel mio recordset, poi clicco sul pulsante del Retro (codice sopra), poi mi sposto nuovamente indietro.
Quando cerco di Andare avanti nel RecordSet VB mi restituisce un errore che dice il recordSet mi non sa su che record posizionarsi perchè si è verificato un aggiornamento sui dati.
Come posso fare per scorrere il recordSet e modificare i dati senza incappare in quell'errore?
Ho anche provato ad usare il metodo .UpdateBatch ma il risultato è sempre lo stesso.
Se io mi muovo avanti e indietro nel recordset senza modificare nulla non da alcun errore.
Help!!!