Gestione valore dei campi di un record in una maschera con più elementi

di il
5 risposte

Gestione valore dei campi di un record in una maschera con più elementi

Buongiorno a tutti,
spiego il mio problema, ho una maschera "main" che contiene una sottomaschera "registro prove", la sottomaschera è una maschera con più elementi provenienti da una query, io vorrei che al doppio click (ad esempio) del primo campo di un record visualizzato, mi aprisse una terza maschera nominata "VIsualizza RIchiesta" che contiene tutti i recordo visualizzati 1 ad 1, e quindi mi aprisse il record corrispondente.
Il vero problema è che vado ad eseguire questo codice prende come valore del campo sempre e solamente il primo record.
Questo il codice
Private Sub Richiesta_Numero_DblClick(Cancel As Integer)
DoCmd.OpenForm "VIsualizza RIchiesta", , , [Richiesta_Numero] = Richiesta_Numero.Value

End Sub
N.B. Il valore della cella rimane sempre quello del primo record anche se cambio source della query in questo modo
Private Sub Scelta_Change()
Select Case Scelta
Case "Open"
Me!REGISTRO_proveLab_2019Open.Form.RecordSource = "REGISTRO_proveLab_2019Open"
Me!REGISTRO_proveLab_2019Open.Requery
Case "Closed"
Me!REGISTRO_proveLab_2019Open.Form.RecordSource = "Registro_prove_Closed"
Me!REGISTRO_proveLab_2019Open.Requery
Case "Planned"
Me!REGISTRO_proveLab_2019Open.Form.RecordSource = "Registro_Prove_Planned"
Me!REGISTRO_proveLab_2019Open.Requery
Case "Suspended"
Me!REGISTRO_proveLab_2019Open.Form.RecordSource = "REGISTRO_proveLab_2019Open"
Me!REGISTRO_proveLab_2019Open.Requery
End Select
End Sub
Grazie anticipatamente

5 Risposte

  • Re: Gestione valore dei campi di un record in una maschera con più elementi

    Parto dal presupposto che il campo [Richiesta_Numero] sia di tipo Numerico. Di conseguenza prova questo
    Private Sub Richiesta_Numero_DblClick(Cancel As Integer)
    DoCmd.OpenForm "VIsualizza RIchiesta", , , "[Richiesta_Numero] = " & Me!Richiesta_Numero.Value
    End Sub
  • Re: Gestione valore dei campi di un record in una maschera con più elementi

    OsvaldoLaviosa ha scritto:


    Parto dal presupposto che il campo [Richiesta_Numero] sia di tipo Numerico. Di conseguenza prova questo
    Private Sub Richiesta_Numero_DblClick(Cancel As Integer)
    DoCmd.OpenForm "VIsualizza RIchiesta", , , "[Richiesta_Numero] = " & Me!Richiesta_Numero.Value
    End Sub
    Grazie intanto per la risposta, non ho specificato che il campo Richiesta_Numero è un testo breve, quindi string.
    Il tuo codice apre la Maschera desiderata su un record vuoto, senza possibilità di scorrere tra i record già presenti.
  • Re: Gestione valore dei campi di un record in una maschera con più elementi

    mascio ha scritto:


    Il campo Richiesta_Numero è un testo breve, quindi string
    Allora leggi qui
    https://www.fontstuff.com/access/acctut15.ht
    Io ci impazzisco un po' quando è string...prova
    Private Sub Richiesta_Numero_DblClick(Cancel As Integer)
    DoCmd.OpenForm "VIsualizza RIchiesta", , , "[Richiesta_Numero] = '" & Me!Richiesta_Numero.Value & "'"
    End Sub
  • Re: Gestione valore dei campi di un record in una maschera con più elementi

    OsvaldoLaviosa ha scritto:


    Private Sub Richiesta_Numero_DblClick(Cancel As Integer)
    DoCmd.OpenForm "VIsualizza RIchiesta", , , "[Richiesta_Numero] = '" & Me!Richiesta_Numero.Value & "'"
    End Sub
    Con questo codice funziona! Anche se dopo non posso scorrere tra i record, ora studio quel link che hai consigliato, grazie mille!
  • Re: Gestione valore dei campi di un record in una maschera con più elementi

    mascio ha scritto:


    Anche se dopo non posso scorrere tra i record
    Il 4° argomento di OpenForm è la Condizione WHERE e svolge una funzione di FILTRO. Se non devi filtrare/puntare solo su di esso la devi togliere proprio. Prova così
    DoCmd.OpenForm "VIsualizza RIchiesta"
    DoCmd.GoToControl "Richiesta_Numero"
    DoCmd.FindRecord Me![Richiesta_Numero]
Devi accedere o registrarti per scrivere nel forum
5 risposte