Newsgroup: it.comp.appl.access
Titolo: Riferimento da sottomaschera ad altra sottomaschera

Ho una maschera (1) con due sottomaschere (2 e 3).
Nell'evento "su corrente" della sottomaschera "2" chiedo di
controllare che il valore del controllo "data" (in 2) sia compreso tra
due date che trova scritte nella sottomaschera "3".
Se è vero allora il controllo deve diventare inattivo.
Questo il mio comando:
if data <= Forms![1]![3]![datainzio]) and data <= Forms![1]![3]!
[datafine]) then Me![data].Enable=False
L'errore che ricevo è "riferimento non valido alla proprietà Form/
Report"
In pratica (credo) non riesce a capire dove sono i due controlli della
sottomasch."3".
Ho provato anche a scrivere Forms![1]![3].form![datainzio]) senza
risultato.
Potete darmi una mano?!
Grazie
Stefano

 ha scritto nel messaggio 
news:1179308536.5...@q23g2000hsg.googlegroups.com...

Questo il mio comando:




[risposta]
Se stai scorrendo i record della seconda sottomaschera con il cursore sul 
controllo [data] (a proposito cambiagli nome perché è uno dei nomi riservati 
ad access) non puoi disabilitarlo.
Devi prima spostare il fuoco (SetFocus) su un altro controllo...
Ciao.
-- 
Sergio MAZZA 

 Sergio MAZZA
Mettendo la condizione "su corrente" mi attiva/disattiva il controllo
nel momento in cui attivo la sottomaschera (così ho verificato con
altre tipi di condizioni).
Il problema in questo caso è il fare riferimento ad un controllo
presente in un'altra sottomaschera. Di solito infatti chiedo di
confrontare due controlli presenti nella maschera principale e in una
sua sottomaschera.
P.S. in effetti ho usato una altro nome per il controllo "data" ma
grazie cmq per l'informazione.
Stefano

 ha scritto nel messaggio 
news:1179311091.4...@w5g2000hsg.googlegroups.com...
Mettendo la condizione "su corrente" mi attiva/disattiva il controllo
nel momento in cui attivo la sottomaschera (così ho verificato con
altre tipi di condizioni).
[risposta]
Perché non è quello il primo controllo che prende il fuoco.
Il problema in questo caso è il fare riferimento ad un controllo
presente in un'altra sottomaschera. Di solito infatti chiedo di
confrontare due controlli presenti nella maschera principale e in una
sua sottomaschera.
[risposta]
Se per "riferimento" intendi: "leggere il vaore contenuto in un controllo", 
allora prova con: Parent!nomeSottomaschera!nomeControllo
P.S. in effetti ho usato una altro nome per il controllo "data" ma
grazie cmq per l'informazione.
Stefano
[risposta]
Ciao.
-- 
Sergio MAZZA 

 Sergio MAZZA
Ho provato:
Parent!3!Datainizio) ecc...
ma mi da il solito messaggio d'errore...
Cos'altro può essere?
Ciao
Stefano

 ha scritto nel messaggio 
news:1179308536.5...@q23g2000hsg.googlegroups.com...

Questo il mio comando:




[risposta]
Prova a leggere qui: 
http://support.microsoft.com/kb/209099/en-us
o qui: 
http://tinyurl.com/2z5kon
Ciao.
-- 
Sergio MAZZA 

 Sergio MAZZA
Grazie ancora per l'aiuto!
Il materiale sembra esaustivo.
Ciao
Stefano


Vorrei continuare la discussione  con questo inconveniente.
Il riferimento ai controlli situati in altre sottomaschere non era
sbagliato.
Il bello/brutto è che funziona con i primi 5 controlli, al sesto
controllo per cui chiedo di confrontare il valore con i valori
presenti in un'altra sottomaschera, ACCESS non ci sta e mi da
errore!!!!!
La stringa è la stessa identica cambia solo il nome del controllo di
"partenza" (per altro hanno tutti lo stesso tipo di dato).
Rischio di andare fuori di testa, cosa può essere successo??!!
Grazie ancora per ogni suggerimento!
Stefano

 Sergio MAZZA

Cos'altro può essere?
[risposta]
Fai in questo modo:
If (data1 <= [Forms]![tabella2]![Tprova1]![data2]) And (data1 <= 
[Forms]![tabella2]![Tprova1]![data3]) Then
Ciao
Stefano
Ciao 

 ha scritto nel messaggio 
news:DdL2i.9729$U01.1...@twister1.libero.it...

Cioè cosi
If (data1 <= [Forms]![1]![3]![data2]) And (data1 <= [Forms]![1]![3]![data3]) 
Then
Quella che ti ho postato era la prova che ho effettuato e fungeva.
a riciao.

 ha scritto nel messaggio 
news:1179330687.9...@u30g2000hsc.googlegroups.com...
Vorrei continuare la discussione  con questo inconveniente.
Il riferimento ai controlli situati in altre sottomaschere non era
sbagliato.
Il bello/brutto è che funziona con i primi 5 controlli, al sesto
controllo per cui chiedo di confrontare il valore con i valori
presenti in un'altra sottomaschera, ACCESS non ci sta e mi da
errore!!!!!
La stringa è la stessa identica cambia solo il nome del controllo di
"partenza" (per altro hanno tutti lo stesso tipo di dato).
Rischio di andare fuori di testa, cosa può essere successo??!!
Grazie ancora per ogni suggerimento!
Stefano
[risposta]
Per quanto mi riguarda, mancano delle informazioni per poter solo abbozzare 
qualche suggerimento; figuriamoci per poter riprodurre il tuo problema.
Proviamo a descrivere la situazione:
[mascheraPrincipale1] (associata? Boh!)
--> [sottomaschera2] (associata? Boh! Visualizzazione: Maschera singola? 
Foglio dati? Maschere continue?)
---> evento "su corrente" controlla che il valore del controllo "data" sia 
compreso tra le date che trova scritte in [sottomaschera3], e se è vero deve 
diventare inattivo.
 Forse un:
me![data].enabled = not (me![data] >= parent!sottomaschera3!datainizio and 
me![data]<=parent!sottomaschera3!datafine)
--> [sottomaschera3] (associata? Boh! Visualizzazione: Maschera singola? 
Foglio dati? Maschere continue?)
---> (contiente) [dataInizio] e [dataFine]
Quanto sono andato vicino?
Ciao.
-- 
Sergio MAZZA