Newsgroup: it.comp.appl.access
Titolo: Query con parametro a scelta

Salve,
esordisco oggi in questo news group, quindi sono un novellino, ma
apprendo in fretta!
Ho un piccolo problemino, ho delle tabelle collegate e voglio generare
una query riassuntiva, ma voglio che il parametro di ingresso sia
variabile, e che lo devo scegliere da una lista (magari un menu a
tendina)
es.
tb Prodotti
        IDProdotto
        nome
        idReparto
        scorta
tb Reparti
        IDRepart
        NomeReparto
        Responsabile
I campi idReparto e IDRepart sono collegati tra loro
Ora vorrei una query che mi mostri:
        Nome (tp prodotti)
        NomeReparto (tb Reparti)
        Scorta (tb prodotti)
e che quando la eseguo mi chiede la scelta del reparto, selezionandola
da un elenco...
spero di essermi riuscito ad esprimere al meglio
Grazie Mario


Puoi risolvere creando una maschera popup (MiaPopup) nella quale inserisci
una casella combinata (cbxReparti) legata alla tabella Reparti, dalla quale
l'utente può scegliere il reparto interessato.
Poi crei una query con i campi che ti interessano, e nel criterio del
reparto metti il valore della casella combinata della maschera popup
(forms!MiaPopup.cbxReparti).
Infine crei una maschera (MioRisultato) legata alla query appena creata, che
visualizzi il risultato.
La maschera MiaPopup conterrà un pulsante OK e sull'evento Click del
pulsante fai aprire la maschera MioRisultato, e fai nascondere la maschera
MiaPopup.
Ricorda anche, su chiusura della maschera MioRisultato, di chiudere
MiaPopup, che altrimenti rimarrebbe aperta e invisibile.
Naturalmente i nomi degli oggetti li puoi impostare a tuo gradimento, quelli
usati da me sono di puro esempio.
Saluti
Franco
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

ho provato come mi hai detto, solo che mi esce la maschera di imput
con copra scritto forms!MiaPopup.cbxReparti
ma nn mi fa scegliere i dati...
uffi:(
grazie




ho provato come mi hai detto, solo che mi esce la maschera di imput



Provo a spiegarmi meglio.
La maschera di partenza è MiaPopup; in essa sono presenti tre oggetti:
1) una casella combinata cbxReparti, legata alla tabella tbReparti tramite
idRepart e NomeReparti (il primo campo nascosto, come suggerisce la
creazione guidata)
2) un pulsante cmdAnnulla che chiude MiaPopup senza fare nulla
3) un pulsante cmdOK che accetta la scelta fatta dall'utente.
Dopo che l'utente ha scelto un reparto dalla combobox, se preme cmdAnnulla
si chiude MiaPopup e basta, se preme cmdOK si deve aprire la
mascheraMioRisultato e nascondere MiaPopup
private sub cmdOK_click()
   docmd.openform "MioRisultato"
   me.visible=False
end sub
La maschera MioRisultato sarà una maschera che visualizza i dati che vuoi
tu, prelevandoli da una query (QryRisultato) che tu avrai già creato con i
campi interessati, ai quali devi aggiungere il campo idRepart.
Nel criterio del campo idRepart (che puoi anche non visualizzare) devi
mettere la stringa
forms!MiaPopup.cbxReparti
Quindi, quando vuoi visualizzare l'elenco (tramite pulsante o tramite menu
come tu avrai impostato), farai aprire la maschera MiaPopup ed il resto
verrà di conseguenza.
Ricorda di chiudere MiaPopup alla chiusura di MioRisultato
private sub form_unload(cancel as integer)
   DoCmd.Close acForm, "MiaPopup"
end sub
Tieni presente che devi cambiare i nomi degli oggetti (MiaPopup,
MioRisultato, cbxReparti, cmdOK, cmdAnnulla, qryRisultato ) con quelli
effettivamente utilizzati da te (guarda la proprietà nome di ogni oggetto).
