Tbl Cantanti Tbl dischi
Campo1 Id Cantante Id Dischi
Campo 2 NomeCantante Disco
Campo3 Id Cantante
Ho creato una maschera collegata alla tbl Cantanti dove ho inserito una
sottomaschera collegata alla tbl Dischi.
La maschera e la sottomaschera sono collegate, nelle proprietà campi
secondari e campi master, tramite il campo Id Cantante
Fin qui tutto bene funziona tutto, scorrento i record della maschera nella
sottomaschera visualizzo i dischi filtrati e corrispondenti al cantante.
Il problema è che vorrei cambiare la casella corrispondente ai cantanti da
casella di testo in casella combinata quindi scegliere dalla lista a tendina
il cantante ed avere nella sottomaschera i relativi dischi.
Purtroppo così facendo non riesco più a filtrare i corrispondenti dischi. In
poche parole sembra che la sottomaschera non sia più collegata alla maschera
principale.
Ho provato a guardare nel Ng e nel sitocomune, purtroppo ho trovato solo
nella sezione form un esempio (aggiungi tutti nella casella a discesa) che
non ho capito bene se non fa al caso mio o sono veramente imbranata.
Vorrei ringraziarvi anticipatamente, devo scollegarmi in quanto devo
continuare a studiare (per un esame) e potrò vedere le vostre eventuali
risposte solo stasera.
Ciao, siete bravissimi da invidia.
giulia
Tranquilla, non fa al caso tuo.
>
> Vorrei ringraziarvi anticipatamente, devo scollegarmi in quanto devo
> continuare a studiare (per un esame) e potrò vedere le vostre eventuali
> risposte solo stasera.
>
> Ciao, siete bravissimi da invidia.
>
>
> giulia
Ci sono tanti modi per risolvere il tuo problema, te ne suggerisco uno.
Partiamo dalla maschera/sottomaschera che erano funzionanti, insomma quelle
dove non ci sono caselle combinate: non devi cambiare la casella di testo
corrispondente ai cantanti in casella combinata, anche perchè è associata,
mentre per fare una selezione ti serve una casella combinata non associata.
Quindi, nell'intestazione (ho scritto intestazione e non corpo) della
maschera principale funzionante inserisci una casella combinata non
associata che chiamerai CercaCantante; fai in modo che la casella combinata
abbia due colonne di cui visibile solo la seconda; imposta a 1 la proprietà
Colonna associata della casella combinata; come origine riga della casella
combinata usa il seguente codice SQL:
SELECT DISTINCTROW TblCantanti.IdCantante, TblCantanti.NomeCantante
FROM TblCantanti
ORDER BY TblCantanti.NomeCantante;
Sembra un po' complicato, ma se per inserire nella maschera la casella
combinata usi l'autocomposizione controllo e rispondi correttamente alle
domande che ti pone il wizard, fa tutto da solo Access. ;-)
A fronte dell'evento "Dopo aggiornamento" della casella combinata genera il
seguente codice VBA:
Me.Filter = "IdCantante=" & Me!CercaCantante
Me.FilterOn = True
Ora se apri la maschera principale e selezioni dalla casella combinata il
nome di un cantante, nella maschera principale vedrai i dati di quel
cantante e nella sottomaschera i dati relativi ai suoi dischi.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------