Newsgroup: it.comp.appl.access
Titolo: Filtra sottomaschera

Salve a tutti.
Vediamo se riesco a spiegarmi.
Sulla base dell'esempio di NorthWind ho ricavato il mio piccolo gestione
ordini.
Ho una maschera ordini e una sottomaschera Ordini. Nella maschera principale
sono contenuti tutti i dati relativi al cliente a cui fatturare, nella
sottomaschera sono inseriti i dettagli ordine.
I campi della sottomaschera sono:
TextBox: IDOrdine (che č in relazione con IDOrdine della maschera
principale), PrezzoUnitario.
Combo: NomeTipo, IDProdotto
Vorrei poter filtrare la combo IDProdotto (che come in NorthWind,
restituisce la descrizione prodotto) in base al NomeTipo. Questo mi
permetterebbe di non dover scorrere ogni volta la tutta la combo fino a
trovare quei prodotti associati a quel NomeTipo.
Spero di aver spiegato il problema.
PS Ho controllato nel sito comune la FAQ Filtra Sottomaschera.... ma mi
viene un po' difficile adttala al problema, tanto piů che la sottomaschera
ordini č visualizzata in formato foglio dati.
Lorenzo


non è molto chiara la situazione delle combo... da dove prende il valore nometipo?
vado per intuito:
hai 2 combo, una con nome tipo e una con l'eleco prodotti
nome tipo è stardard e senza modifica e dopo l'aggiornamento vorresti che la combo con i prodotti evidenzasse solo i prodottidi quel 
nometipo, giusto?
se è così basta che entri nelle proprietà della combo ordini... identifichi la query di origine dati della combo
inserisci il campo nometipo(può essere anche un campo nascosto) e metti come criterio
=forms!nomemascheraordini!nomecombo_nometipo
ed il gioco è fatto... (se ho indovinato come è la struttura)
ciao
NIck 

"Nick" <senz...@chiedetesul.NG> ha scritto nel messaggio
news:OQR5d.10447$N45.2...@twister2.libero.it...

Grazie, ma non funziona oppure non ho ben capito. Nella qry di origine della
cmbIDProdotto esiste già il campo NomeTipo. Ho aggiunto il criterio
suggerito ma ogni volta che apro la maschera mi segala la mancanza del
parametro forms!nomemascheraordini!nomecombo_nometipo. Cerco di spiegare
meglio la struttura.
Esistono una Tabella Modelli, una Tabella ListinoGenerale, una Tabella
Ordini e una Tabella DettagliOrdini. La Maschera Ordini ha come origine una
qryOrdini (originata dalla Tb Ordini) mentre la sottomascheraOrdini ha come
origine una qryDettagliOrdini (originata dalla TbDettagliOrdini).
La combo IDProdotto (SELECT tblListinoGenerale.IDProdotto,
tblListinoGenerale.DescrizioneProdotto, tblListinoGenerale.NomeTipo FROM
tblListinoGenerale ORDER BY tblListinoGenerale.NomeTipo;) elenca tutti gli
articoli ordinati per NomeTipo. Scelto un'articolo inserisce nelle caselle
opportune tanto il prezzo quanto il NomeTipo (queste due caselle sono
bloccate e non abilitate e non selezionabili con tabulazione, perchè mi
faceva comodo saltarle in fase di compilazione ordine). Ho creato nella
sottomaschera una seconda combo, cmbModello (SELECT qryModelliNull.NomeTipo
FROM qryModelliNull  ORDER BY qryModelliNull.NomeTipo;) (ho creato una qry
unione che contempli anche il valore Null) che DOVREBBE filtrare la
comboIDProdotto. In pratica: seleziono il NomeTipo nella cmbModello e nella
cmbIDProdotto verranno visualizzati solo quegli articoli associati al
nometipo scelto nella cmbModello.
Spero sia un po' più chiaro.
Grazie per l'aiuto.

 ha scritto nel messaggio
news:Jz06d.11623$H11.3...@twister1.libero.it...

Riposto il mio problema sul filtraggio della combo cercando di essere più
chiaro. Ho letto tutte le varie problematiche, ma non sono riuscito ad
adattarle (per ignoranza del sottoscritto). Specifico che nel Subject ho
erroneamente segnalato filtra sottomaschera anziche filtra combobox. Ne
chiedo scusa.
Vengo al dunque:
Tabelle (in grassetto le chiavi primarie):
1. ListinoGenerale (IDProdotto, NomeTipo, PrezzoUnitario,
DescrizioneProdotto)
2. Ordini (IDOrdine)
3. DettaglioOrdine (IDOrdine, IDProdotto,PrezzoUnitario, Quantità, NomeTipo)
Da queste tabelle, mediante qry ho creato una maschera ordini e una
sottomaschera ordini (seguendo l'esempio di NorthWind)
Nella Sottomaschera ho la casella combinata  IDProdotto (origine: SELECT
tblListinoGenerale.IDProdotto, tblListinoGenerale.DescrizioneProdotto,
tblListinoGenerale.NomeTipo FROM tblListinoGenerale ORDER BY
tblListinoGenerale.DescrizioneProdotto, tblListinoGenerale.NomeTipo;). Così
com'è strutturata, quando seleziono un certo articolo, in automatico si
"riempiono" i campi NomeTipo e Prezzo Unitario (che ho provveduto a bloccare
perchè non mi serviva modificarli)
Vorrei poter filtrare la combinata IDProdotto in base al NomeTipo in modo
che compaiano solo quei prodotti associati a quel NomeTipo, inserendo una
seconda combo, stavolta nella maschera principale che elenchi tutti i valori
di NomeTipo. Ma: 1. NomeTipo non è contenuto nella qry origine della
maschera principale; 2. Se seguo il suggerimento che mi è stato dato ("che
entri nelle proprietà della combo ordini... identifichi la query di origine
dati della combo inserisci il campo nometipo (...) e metti come criterio
=forms!nomemascheraordini!nomecombo_nometipo), mi va a cambiare il valore
esistente in NomeTipo.
Non so se sono riuscito a spiegare bene, ma perlomeno ci ho provato
PS Uso Access 2003 in ambiente XP.
Grazie in anticipo a chiunque abbia voglia (e tempo) di aiutarmi