Obbligo compilazione campi in maschera

di il
1 risposte

Obbligo compilazione campi in maschera

Buonasera a tutti e soprattutto buon anno.

Come da titolo avrei bisogno di un vostro aiuto per gestire l'obbligatorietà di compilare tutti i campi presenti in maschera.
Ho già scovato in giro su internet ma non ho trovato nulla che faccia al mio caso.
Non voglio sfruttare la proprietà della tabella "RICHIESTO = SI" ma ho bisogno di agire tramite codice.

Nel mio esempio riporto una parte di codice che utilizzo. Al click di un button, si genera un file in PDF di un elenco il quale viene prima controllato se tutti i campi sono stati compilati.

Per il momento sto sfruttando questo:
 Private btn_Click()
Dim ctl As Variant

For Each ctl In Array(txtQualifica, txtCognome, txtNome)
If NZ(ctl.Value, "") = "" Then
ctl.Setfocus
Msg "Campo obbligatorio non compilato." vbCritical,
"Attenzione"
Exit Sub
End If
Next
....
....
....
End Sub 
Il codice funziona ma non del tutto, nel senso che il primo record lo gestisce bene. Al click sul Button il controllo campi avviene in modo corretto: se un campo è stato omesso viene evidenziato l'errore altrimenti avverrà la creazione del file in PDF.
Se invece inizio a compilare altri record ma li lascio incompleti (ometto quindi qualche campo) e intanto il primo record è totalmente compilato in ogni suo campo, non appena clicco sul Button, avverrà lo stesso la creazione del file in PDF, senza mostrare l'errore dei campi vuoti.
È come se al ciclo For Each gli basti la piena compilazione di un solo record,.non controllando se i campi di altri record sono vuoti o no.

Vorrei mantenere il più alterato possibile il codice utilizzato. Senza far troppi stravolgimenti.
Grazie per il sostegno.

1 Risposte

  • Re: Obbligo compilazione campi in maschera

    I dati vanno controllati al momento della Compilazione...!!!! Non come fai tu.
    Quel codice, se usato in una Maschera Continua, come pare, è ovvio che agisca SOLO su 1 Record, quello Corrente per la precisione, e questo dovrebbe farti capire che la mia prima affermazione è Importante.

    In sostanza si deve gestire l'evento BeforeUpdate di Form e, li si controlla la VALIDAZIONE dei dati... ovvero la corretta compilazione.
    Perchè poi tu non voglia utilizzare l aproprietà di Tabella dovresti spiegarcelo... perchè detta così quello che fai ha tutto un senso decisamente poco tecnico e molto raffazzonato.
Devi accedere o registrarti per scrivere nel forum
1 risposte