Newsgroup: it.comp.appl.access
Titolo: fermare la programmazione per inserire un dato

I miei complimenti a tutti,  un NG fantatico, grazie di vero cuore
Come posso impedire di andare avanti nell'inserimento di un dato quando 
questo e sbagliato in attesa di inserire il dato giusto
p.e.
Private Sub Sconto_AfterUpdate()
    If Sconto >= ScEx Then
    MsgBox ("ATTENZIONE  CORREGGERE LO SCONTO, TROPPO ALTO")
    End If
End Sub
Grazie
:) 

 :)
-- 
_ _
Ciao
MAssimiliano Amendola            
www.accessgroup.it
Cisa - Conferenza Italiana per Sviluppatori Access
Info:  
www.donkarl.com/it

 ha scritto nel messaggio 
news:44a938b4$0$1012$5fc...@news.tiscali.it...


     Sconto = ""
     'solo se vuoi cancellare il dato errato
     Sconto.Set focus
    End If
  End Sub
Saluti Andrea 

Mi dà errore di debug  inserendo Sconto.oldvalue
mentre inserendo solo sconto.setfocus mi avvisa ma passa oltre
Grazie
:)

sconto e finchè non si inssrisce il dato inferiore non va avanti.
Grazie
:) 


me.sconto.undo


elicar ha scritto:

L'evento che devi sfruttare è "Prima di Aggiornare"...
Private Sub Sconto_BeforeUpdate()
.
.
.
End Sub
--
rgrds
SC
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 :)
Non va bene usare l'evento AfterUpdate, è nonsolo concettualmente
sbagliato
ma decisamente non corretto.
In questo modo il dato ha già subito la variazione, che peraltro è
errata.
Il controllo è e deve essere preventivo, quindi prima della convalida.
Come ti ha suggerito Salvino va fatto su BeforeUpdate, gestito il
Cancel=True
e l'Undo dell'immissione.
Ciao
@Alex

 ha scritto nel messaggio 
news:1152007306....@v61g2000cwv.googlegroups.com...
elicar ha scritto:



Potresti riscrivere il codice per intero almeno lo provo su delle mie form, 
sinceramente io non ho mai avuto problemi a gestire i dati come 
sopradescritto e non capisco dove stà l'errore.
Io con il codice che ho scritto ottengo questo risultato: scrivo il dato -> 
il codice lo controlla dopo l'invio -> se è errato ritorna sulla combo e la 
azzera -> io riscrivo il dato che presumibilmente era errato.
Saluti Andrea 

 Saluti Andrea
Vorrei suggerirti:
http://www.accessgroup.it/HomeArgomenti.asp?ID=99&Oggetto2=Traduzioni%20:%20MS%20Access%202000.
..
Capitolo 5: Gestire gli eventi nella tua applicazione.


 ha scritto nel messaggio 
news:1152007306....@v61g2000cwv.googlegroups.com...
elicar ha scritto:



Ciao
@Alex
ho apportatto le modifiche di seguito:
Private Sub Sconto_BeforeUpdate(Cancel As Integer)
 If Sconto >= ScEx Then
    MsgBox ("ATTENZIONE INSERIRE IL DATO")
    Me!Sconto.Undo
    Me!Sconto.SetFocus
    ...
nell'esecuzione mi dà errore di debug:
Errore 2108
È necessario salvare il campo prima di eseguire l'azione VaiAcontrollo o il 
metodo GoToControllo
Sapete non sono molto Esperto ma con tanta voglia di imparare
Grazie
:))
 

 ha scritto nel messaggio 
news:e8dgpq$j5o$1...@news.newsland.it...

Ho un video che mi impedisce di stare più di 5 minuti a leggere un carattere 
inferiore al corpo 8 ma non c'è il verso di averlo in formato pdf che lo 
stampo?
Al limite mi farò un copia incolla su word ;)
Saluti Andrea 

 Capitolo 5: Gestire gli eventi nella tua applicazione.
Copia incolla andato a buon fine, stasera ho un bel pò da apprendere e 
leggere!
Saluti Andrea 

 Saluti Andrea
Non ho detto che non funziona, ho detto che è scorretto.
Se il dato non va bene, è inadeguato salvarlo per poi modificarlo
e obbligare l'utente a cambiarlo poi
Supponi che chiuda senza fare la modifica.... il dato è salvato
e chi rimane fregato sei tu...!
Essendo da controllare l'evento corretto è BeforeUpdate del controllo.
Private sub NomeControllo_BeforeUpdate(Cancel as integer)
   If Me!NomeControllo<>Condizione then
      Me!NomeControllo.Undo
      Cancel=True
      MsgBox "Dato non corretto"
   End If
End Sub
Ciao
@Alex

VedoTondo ha scritto:


Ma vedi che c'è il download dell'articolo. L'ho messo in formato .chm
Più comodo di così..
--
Salvino


 ha scritto nel messaggio
Non ho detto che non funziona, ho detto che è scorretto.
[Risposta]
Ok, questo concetto mi è più adeguato!
Se il dato non va bene, è inadeguato salvarlo per poi modificarlo
e obbligare l'utente a cambiarlo poi
Supponi che chiuda senza fare la modifica.... il dato è salvato
e chi rimane fregato sei tu...!
[Risposta]
Effettivamente non ci avevo pensato, io però non ho codesto problema perchè 
lavoro su temp e quindi un dato se non è giusto difficilmente riesce ad 
essere registrato e addirittura lo considero un baco se ci riuscisse.
Essendo da controllare l'evento corretto è BeforeUpdate del controllo.
Private sub NomeControllo_BeforeUpdate(Cancel as integer)
   If Me!NomeControllo<>Condizione then
      Me!NomeControllo.Undo
      Cancel=True
      MsgBox "Dato non corretto"
   End If
End Sub
[Risposta]
Non ho mai provato, stasera prima o dopo la partita mi metto e provo a 
vedere che non sia più utile che anche io modifichi le mie rutine come 
suggerisci tu.
Saluti Andrea 

 Piů comodo di cosě..
Scusami ma ancora non sono pratico con il vs sito, non avevo vistoche c'era 
il download, grazie!
Saluti Andrea 

 Saluti Andrea
Non ho detto che non funziona, ho detto che č scorretto.
Se il dato non va bene, č inadeguato salvarlo per poi modificarlo
e obbligare l'utente a cambiarlo poi
Supponi che chiuda senza fare la modifica.... il dato č salvato
e chi rimane fregato sei tu...!
Essendo da controllare l'evento corretto č BeforeUpdate del controllo.
Private sub NomeControllo_BeforeUpdate(Cancel as integer)
   If Me!NomeControllo<>Condizione then
      Me!NomeControllo.Undo
      Cancel=True
      MsgBox "Dato non corretto"
   End If
End Sub
Ciao
@Alex
Perfetto grazie, cosě funziona alla grande, ma se volessi inserire 
all'interno del messaggio "dato non corretto" il valore del campo ScEx
"ti allego la stinga funzionanate"
Private Sub Sconto_BeforeUpdate(Cancel As Integer)
If Me!Sconto >= ScEx Then
    Me!Sconto.Undo
    Cancel = True
    MsgBox ("Dato non Corretto")
    End If
Ciao
Carlo
End Sub 

 Saluti Andrea
Ciao


 Ieri Pablito ha messo su anche la pagina del Forum...
Ho provato a scrivere qualcosa ma non mi è riuscito, però ormai lo avrete 
capito tutti che sono un caso limite :)
Saluti Andrea 

 Saluti Andrea
Ciao Vedo Tondo...
riguardo ad accessgroup, per chiarire meglio il perchè, il per chi, e il
per come, del sito, ti consiglio una veloce lettura della sez. chi
siamo... ;)
Quì, oltre ai personaggi incriminati della creazione, e della gestione
dello stesso, troverai anche le motivazioni che li hanno spinti e ancora
oggi li muovono nel mantenimento del sito... ;D
..per il Forum, invece, dimmi che problema hai avuto per favore... :) 
Grazie.
-- 
Ciao
Pablitomf (Maurizio Facciuti)
Access : Ver.97 - 2K
----------------------------
http://www.accessgroup.it/
----------------------------
Non mi fido molto delle statistiche, perchè un uomo con la testa nel forno
acceso e i piedi nel congelatore statisticamente ha una temperatura media.


 Grazie.
E' molto diverso dai forum tradizionali e quindi non riuscivo a capirne il 
funzionamento, anche se approvo la semplicità visiva, ho riprovato a mandare 
un messaggio anche oggi, vedi se appare.
Saluti Andrea 

 un messaggio anche oggi, vedi se appare.
Affatto... ma come rispondi al forum?
Es.
http://www.accessgroup.it/Forum.asp
clicchi su "Argomenti proposti per il Forum"
selezioni i post al quale rispondere e clicchi su rispondi
compili il form, invii, confermi l'invio e il gioco è fatto... ma che
problema c'è?!


 problema c'è?!
Così ho fatto, ci riproverò!
Saluti Andrea

 Capitolo 5: Gestire gli eventi nella tua applicazione.
Ottimo, grazie alla traduzione ho capito delle cose che non riuscivo a 
"prendere, veramente utile.
Saluti Andrea 

 ha scritto nel messaggio
Non ho detto che non funziona, ho detto che è scorretto.
Se il dato non va bene, è inadeguato salvarlo per poi modificarlo
e obbligare l'utente a cambiarlo poi
Supponi che chiuda senza fare la modifica.... il dato è salvato
e chi rimane fregato sei tu...!
Essendo da controllare l'evento corretto è BeforeUpdate del controllo.
Private sub NomeControllo_BeforeUpdate(Cancel as integer)
   If Me!NomeControllo<>Condizione then
      Me!NomeControllo.Undo
      Cancel=True
      MsgBox "Dato non corretto"
   End If
End Sub
Ciao
@Alex
Finalmente ho capito quello che intendi, ho anche capito perchè non ci 
arrivavo.... oggi ho messo mano ad una maschera continua e se non seguivo la 
tua logica non ci levavo le gambe.
Saluti Andrea