Controllo sui campi prima di validare un record

di il
2 risposte

Controllo sui campi prima di validare un record

Miei cari:
Voglio sottoporre un problema in cui sono incappato e da cui non riesco ad uscirne.
Spero che i tanti più bravi di me possano darmi una valida mano.
Sono in una sottomaschera di una maschera e faccio l'editing dei campi di un record.
I campi sono tanti e molti sono fra loro sono "condizionati" per cui, quando l'OP.re clicka fuori dal record, la procedura, mediante Form_BeforeUpdate, effettua i controlli per la coerenza dei campi.
Tutte le volte che l'OP con un MSGBOX è allertato, mediante un DoCmd.GoToControl, viene rimandato a correggere il valore del campo.
Il problema sta nel fatto che, se l'op corregge, è tutto "ok", ma se questi ri-clicka fuori maschera ed insiste per salvare e uscire dal record, la procedura non lo rimanda più in maschera, e si capisce in quanto non sussiste più la condizione di Update:
Come si può fare affinché ci sia l'effetto reiterato necessario?
Un ancora in pratica che dice: se non mi correggi non ti salvo.!
Grazie a chi risponde.
antonio cuomo

2 Risposte

  • Re: Controllo sui campi prima di validare un record

    Evidentemente NON hai forzato il CANCEL dell'azione a TRUE...!

    Gli Eventi da usare sono i BeforeXXXX che espongono un parametro chiamato CANCEL.
    Se questo viene Forzato a TRUE, viene sostanzialmente ANNULLATO e di conseguenza come non si fosse mai scatenato.
    Ne consegue che quello che dici non può accadere.

    Detto ciò tu non fai vedere nulla di esplicito ma hai solo dato una spiegazione molto generica... non sufficiente.
  • Re: Controllo sui campi prima di validare un record

    Speravo tanto che mi rispondessi tu, Alex.
    Ho solo ora letto e interpretato (dopo che me lo hai fatto notare), cosa significasse quel "Cancel As integer" scritto accanto alla chiamata della routine.
    E' una variabile gratuita che se lasciata tranquilla, la funzione muore dopo il suo uso, ma se messa ad 1 (Cancel =1) la routine (se occorre) si perpetua.
    Grazie tanto Alex.
    ... spero di essere più generoso in informazioni la prossima volta.
    antonio
Devi accedere o registrarti per scrivere nel forum
2 risposte