Dubbio su utilizzo RecordsetClone

di il
4 risposte

Dubbio su utilizzo RecordsetClone

Ciao,
ho una tabella "OFFERTAORDINE" a cui è relazionata una seconda tabella "REVISIONI" in relazione 1-->molti. Per una OFFERTAORDINE posso avere diverse REVISIONI. Dentro REVISIONI ho un campo Sì/No (Si chiama "Ordinato") e voglio che se almeno una delle revisioni ha questo campo a TRUE allora un campo similare Sì/No in tabella OFFERTAORDINE (anche lui si chiama "Ordinato") sia settato a TRUE, altrimenti se tutti i campi sono FALSE anche in OFFERTAORDINE deve mettere FALSE.

Ho scritto questo codice, legato all'evento Click della checkbox in REVISIONI:
Private Sub chkRevOrdinato_Click()
    
    Me.Refresh
    If chkRevOrdinato.Value = True Then
        Form_OffertaOrdine.Ordinato.Value = True
    Else
        Dim rstRevisioni As Recordset
        
        Set rstRevisioni = Me.RecordsetClone
        rstRevisioni.MoveFirst
        Form_OffertaOrdine.Ordinato.Value = False
        
        Do While Not rstRevisioni.EOF
            If rstRevisioni.Fields("Ordinato").Value = True Then
                Form_OffertaOrdine.Ordinato.Value = True
                Exit Do
            End If
            rstRevisioni.MoveNext
        Loop
        
        rstRevisioni.Close
    End If
    
End Sub


Ho fatto alcune prove e sembra funzionare, però mi risulta un po' macchinosa come costruzione e la vorrei snellire, se possibile. Secondo voi c'è un modo più veloce per verificare tutti i campi Sì/No della tabella REVISIONI e poi in funzione dell'esito di questa analisi impostare di conseguenza il campo Sì/No della tabella OFFERTAORDINE? Grazie.

4 Risposte

Devi accedere o registrarti per scrivere nel forum
4 risposte