Newsgroup: it.comp.appl.access
Titolo: Focus bastardo!!!!

Ragà mi aiutate per favore?
Ho 2 piccoli ma fastidiosi problemi.
In una maschera di inserimento chiamata anagrafica c'è una casella combinata
che si chiama "Me.codice" dove nell'evento After Update, al fine di
controllare se il codice è già presente in tabella (Anagrafica), uso
l'istruzione:
If DCount("*", "Anagrafica", "Codiceinterno='" & Me!Codice & "'") <> 0 Then
Messaggio di avviso che il codicè è già presente seguita da istruzione
Docmd.gotocontrol "Codice" per dirgli di ritornare sul campo codice.
Ma lui che fa?
Se ne fotte altamente e mi va sul campo successivo dopo aver dato ok al
messaggio di avviso.
Perchè?
Ho pure provato a spostare questo controllo invece che sull'evento "dopo
aggiornamento" all'evento "Disattivato" ma lo stesso.
Dove sbaglio?
Inoltre in un'altra maschera di inserimento bolle all'evento "su non in
elenco" del campo codice fornitore faccio una routine dove mi apre una
maschera per inserire in "Anagrafica" il nuovo articolo.
Funziona tutto bene ma per quanto io mi sia sforzato di cercare di mettere
nella maschera di inserimento del nuovo articolo, il valore del codice
(quello non esistente che mi ha generato l'evento), non ci sono riuscito.
Mi spiego:
Io inserisco nella maschera Bolle il codice interno "9802" (che non esiste)
quindi mi si apre la maschera dove io posso inserire questo nuovo articolo e
vorrei che il valore "9802" comparisse già come valore predefinito della
maschera di inserimento.
Come faccio.
Naturalmente con le istruzioni Forms!["Nomemaschera"]!["Nomecontrollo"]
messe nelle proprietà della casella di testo alla voce "Valore Predefinito"
non funziona come non funziona mettendo la stessa istruzione all'evento
"Attivato" della medesima casella di testo.
Come mai?
Grazie mille per l'aiuto.

 ...
Dopo il tuo
DoCmd.Openform "Pippo"
scrivi
Forms!Pippo!TuoControllo = NewData
o se assolutamente vuoi un valore predefinito prova con
Forms!Pippo!TuoControllo.DefaultValue = NewData
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it

 Forms!Pippo!TuoControllo.DefaultValue = NewData
Già c'è la riga Forms!Pippo!Controllo=NewData dopo la openform "Pippo".

 Come mai?
Se la maschera che contiene la casella combinata si chiama Bolle.
Se la casella combinata contenuta nella maschera Bolle si chiama Pluto.
Se la maschera per aggiornare la tabella Anagrafica si chiama Pippo.
Se la casella di testo relativa al nuovo codice articolo contenuta nella
maschera Pippo si chiama CodArt.
A fronte dell'evento "Su caricamento" della maschera Pippo prova a generare
la seguente riga di codice VBA:
Me!CodArt = Forms!Bolle!Pluto
Comunque ti consiglio di andare sul Sito Comune (link qui sotto) e nella
Sezione Forms leggi la mia FAQ intitolata "Si può aggiungere un record alla
tabella che è origine riga di una casella combinata senza usare una
maschera?".
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------



Idem come sopra!

 ha scritto nel messaggio
news:fw%Pc.70886$OR2.4...@news3.tin.it...

Mooolto strano: per scrupolo ho provato le soluzioni che ti ho consigliato
ed a me funzionano.
