Newsgroup: it.comp.appl.access
Titolo: Problema "if" & "else"

Ciao a tutti,
ho bisogno di impostare una sub cosě impostata,
ho una maschera e dentro questa qui una sottomaschera, nella maschera
principale c'č un bottone di stampa che deve essere visualizzabile solo
quando nella sottomaschera č presente almeno un record e quindi ho scritto
questa sub:
Private Sub Form_Current()
If Me![programma_generale_paziente].Form![id_programma_gen] <> "" Then
Me![stampa].Visible = True
Else
Me![stampa].Visible = False
End If
End Sub
Perň succede che se nella sottomaschera non c'č nulla il bottome mi si
visualizza ugualmente!
Chi sa aiutarmi a ottimizzare tutti ciň?
Grazie mille!
Francesco
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Francesco
Io ribalterei il tutto, e cioč metterei nella sottomaschera_current
if isnull(me.id_programma_gen) then
forms!tuamaschera!stampa.visible = true
else
forms!tuamaschera!stampa.visible = false
end if
MAssimiliano

 MAssimiliano
Ciao


Chi sa aiutarmi a ottimizzare tutti ciň?
Hai associato l'evento sia a su corrente della sottomaschera che a
dopo aggiornamento della casella di testo?
-
haran banjo
ba...@tiscalinet.it
ICQ# 25468446
- you are never given a wish without also being given the power to make =
it true. - Bach


--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Inviato via 
http://arianna.libero.it/usenet/
Mettilo ad invisibile per default, poi lo rendi visibile con il codice
postato da MA invertendo il true e false (se è null il tasto deve essere
invisibile se non è null deve essere visibile immagino)
Ciao Max

 Ciao Max
Grazie
Francesco



E' sbagliata la condizione.
Prova con un conteggio(id)
MAssimiliano

 Francesco
Nell'evento CURRENT della maschera principale prova in questa maniera:
MascheraPrincipale= MyMaschera
Sottomaschera=MySottomaschera
Pulsante=MyPulsante
If Forms![Mymaschera]![MySottomaschera].Form.RecordsetClone.RecordCount =
0 Then
Me.myPulsante.Visible = False
Else
Me.myPulsante.Visible = True
End If
--
rgrds
SC
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Prova inserendo questo codice nell'evento "su corrente" della sottomaschera:
'evita l'errore che si presenta se il controllo da disabilitare è lo stesso
che ha il fuoco
Parent.Controls(0).SetFocus
Parent!NomeBottone.Enabled = IIf(Me.RecordsetClone.RecordCount > 0, True,
False)
Io però ti consiglio di "giocare" sulla proprietà Enabled True/False del
bottone; lo ritengo più amichevole per l'utente che dovrebbe essere così
attento da notare dell'apparizione/sparizione di oggetti sulla form...
Ciao.
--
Sergio MAZZA


--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Sergio MAZZA


 Francesco
Basta cercare RecordsetClone nell'Help. La spiegazione è quantomai
dettagliata e con esempi.



--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


sinceramente per non saper ne leggere ne scrivere, quando mi serve un valore
di una sottomaschera, metto un controllo invisibile nella mschera con
origine controllo nel controllo della sottomaschera, e il test lo faccio da
li, prova così e casomai dopo end if ti fai passare in una msgbox il valore
del controllo.
Ciao Max


Tratto dall'help:
Proprietą RecordsetClone
Č possibile utilizzare la proprietą RecordsetClone per fare riferimento
all'oggetto Recordset di una maschera specificato dalla proprietą
OrigineRecord della maschera.
Proprietą RecordCount
Restituisce il numero di record ai quali si č avuto accesso in un oggetto
Recordset o il numero totale dei record in un oggetto Recordset di tipo
tabella o TableDef.
Ciao.
--
Sergio MAZZA