Salve a tutti!
Ho un problema di aggiornamento dati di una tabella.
Io ho scritto questa Macro allo scopo di aggiornare dei Record ma il problema è che non funziona, ovvero, non va in errore e non aggiorna i record. In parole povere non succede niente e non capisco perchè.
Spero nel Vostro aiuto
Private Sub Comando10_Click()
Dim aggiornaRecord As New ADODB.Recordset
aggiornaRecord.Open "Tab_Magazzino", CurrentProject.Connection, adOpenForwardOnly, adLockOptimistic
If Me.STATUS.Value = "DISPONIBILE" Then
Do Until aggiornaRecord.EOF
If aggiornaRecord![ID-Inserimento] = Me.ID_Inserimento Then
aggiornaRecord!IdClienteAssegnazione = Form_Frm_Ordini2.ID_Cliente.Value
aggiornaRecord!PRODUZIONE = Form_Frm_Ordini2.PRODUZIONE.Value
aggiornaRecord![DATA DI ASSEGNAZIONE] = Date
aggiornaRecord!STATUS = "PRENOTATO"
aggiornaRecord!REPARTO = "MPF"
Exit Sub
Else
aggiornaRecord.MoveNext
End If
Loop
aggiornaRecord.Update
aggiornaRecord.Close
Set aggiornaRecord = Nothing
Form_Frm_AssegnaSeriali.Requery
Form_Frm_Ordini2.Requery
End If
End Sub
Provo a spiegarlo così se sbaglio mi correggete
1) Ho creato un oggetto Recordset
2) Ho aperto questo oggetto e gli ho detto che il Recordset appartiene alla tabella "Tab_Magazzino" che si trova nel progetto corrente; poi ho impostato il cursore adOpenForwardOnly ed impostato anche adLockOptimistic per consentire la modifica dei dati (spero sia tutto corretto)
3) Poi c'è una condizione che fa partire un ciclo se il valore di Me.STATUS è uguale a "DISPONIBILE"
4) Nel caso sia vero inizia il ciclo che parte dal primo Record fino alla fine (EOF)
Ora la parte che non capisco perchè non funzioni
5) Se nel campo [ID-Inserimento] c'è un valore uguale a Me.ID_Inserimento alcuni campi di quel record devono essere aggiornati in base al valori di alcune TextBox di una determinata maschera.
Purtroppo non succede nulla...
Grazie a tutti per l'aiuto!!