Newsgroup: it.comp.appl.access
Titolo: visualizzazione record in maschera continua

Salve a tutti.
In pratica ho una maschera continua che all'apertura mi mostra tutti i
record contenuti nella tabella/query d'origine e successivamente in
base alle caselle combinate mi filtra i dati.
Come si fa a far visualizzare i record solo dopo aver scelto i valori
da filtrare dalle caselle combinate?


Certo tutto dipende della tecnica non rivelata che usi per i filtri.
In genere ci sono metodi diversi. P.e. puoi usare un'enunciato
SQL come origine dati con un criterio che non è mai vero:
SELECT * FROM Tabella WHERE 1 = 2
Poi cambia la parte WHERE con i valori dalle caselle.
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 


Mi spiego meglio.
La maschera ha come origine una query (Ricerca MAndati)  in cui i
campi IdProgetto, IdAnagrafica e Espr1 hanno i seguenti criteri:
Like Nz([Forms]![Ricerca Mandati]![Progetto];"*") per IdProgetto
Like Nz([Forms]![Ricerca Mandati]![Cliente];"*") per IdAnagrafica
Like Nz([Forms]![Ricerca Mandati]![Anno];"*") per Espr1
La maschera ha appunto tre caselle combinate non associate:
la prima seleziona dalla query su descritta l'IdProgetto
la seconda seleziona dalla stessa query l'IdAnagrafica
la terza l'anno.
Su ognuna nell'evento dopo aggiornamento viene eseguito il requery per
tutte e tre le caselle combinate.
Questa è la struttura.
Appena aperta la maschera mi mostra tutti i record eppoi li filta in
base alle caselle combinate.
Io vorrei ottenere il risultato descritto nel primo post.
Grazie Karl. Aspetto tuoi consigli.
Ciao. Giuseppe.

 ...
Puoi p.e. provare questo metodo:
- Nella maschera crea una nuova casella di controllo (invisibile
e non associata) con il nome "chkFiltro".
- Imposta il suo valore predifinito a False.
- Nella query aggiungi un nuovo campo calcolato:
[Forms]![Ricerca Mandati]![chkFiltro]
con il criterio
False
Salva, chiudi e riapri la maschera.



Allora scusa Karl.
La maschera Ricerca Mandati ha come origine la query Ricerca Mandati
per beneficiario.
Nel corpo della maschera ho aggiunto la casella di testo non associata
che ho chiamato chkFiltro.
Nel valore predefinito metto False e me lo converte in Falso (forse
con cambia nulla).
Poi nella query di orgine della maschera (Ricerca Mandati per
beneficiario) ho creato un campo nuovo in questo modo:
NomeCampo:  chkFiltro: Falso
Criteri:  [Forms]![Ricerca Mandati]![chkFiltro]
Nelle due caselle combinate della maschera (tutte non associate) ho
messo come query origine dati:
x Progetto: SELECT DISTINCT tblMandati.IDProgetto,
tblProgetti.Descrizione FROM tblProgetti INNER JOIN tblMandati ON
tblProgetti.IDProgetto = tblMandati.IDProgetto ORDER BY
tblMandati.IDProgetto;
x Cliente: SELECT DISTINCT tblMandati.IdAnagrafica, tblAnagrafica.
[ragione sociale1] FROM tblAnagrafica INNER JOIN tblMandati ON
tblAnagrafica.IdAnagrafica = tblMandati.IdAnagrafica WHERE
(((tblMandati.IDProgetto)=[Forms]![Ricerca Mandati]![Progetto])) ORDER
BY tblAnagrafica.[ragione sociale1];
L'anno ho deciso per il momento di escluderlo e ho quindi eliminato il
requery di quest'ultimo dall'evento dopo aggiornamento delle due
caselle combinate.
Quando apro la maschera non mi mostra alcun record e fin qui mi sta
benissimo. Poi cerco il Progetto lo seleziono ed in base a questo
restringo l'elenco dei clienti. Seleziono il cliente e a questo punto
la maschera mi deve elencare tutti i record che corrispondono a questi
due criteri.
Perchè non succede? Scusa se mi sono dilungato ma preferisco dare più
informazioni possibili.
Grazie.
Ciao Giuseppe.

 ha scritto nel messaggio 
news:50558912-f820-4bb5...@b1g2000hsg.googlegroups.com...


Perchč non succede? Scusa se mi sono dilungato ma preferisco dare piů
informazioni possibili.
Grazie.
Ciao Giuseppe.
Ciao Giuseppe
forse puň aiutarti a capire la faq 3.77 di Roberto.
www.sitocomune.com
Daniele 

> False
Puo darsi che il mio italiano non è sufficiente qui.
Purtroppo non posso dirlo meglio.


 > Criteri:  [Forms]![Ricerca Mandati]![chkFiltro]
In pratica adesso funziona, solo che i record mi appaiono già dopo
aver selezionato la prima combo cioè  per progetto (che era
fondamentale). Quello che volevo io, invece è che i record
apparrissero dopo aver selezionato tutte le combo.
In ogni caso, può andar bene anche così.
Sono indeciso quale soluzione adottare. In ogni caso, cosa devo fare
se volessi far apparire i record dopo averli filtrati anche con la
combo Cliente ed eventualemte da una data ad un'altra?
Grazie Karl e scusa ancora.
Ciao. Giuseppe.
Così

 ha scritto nel messaggio 
news:6i25vvF...@mid.individual.net...

il tuo italiano è ottimo....forse Giuseppe ha fatto un po di confusione. 
;-))
potrebbe togliere il Falso nel valore predefinito della casella di controllo 
e mettere su Clic:
Forms!MiaMaschera.Requery
in questo modo avrebbe, con l'aggiornamento della maschera, la 
visualizzazione o no dei record
Ciao Karl
Daniele 

 ...
P.e. puoi scrivere come criterio per il requery che tutti e due
caselle combinate non siano vuoti. Cioč dopo aggiornamento
delle caselle combinate:
If Not IsNull(Me!Progetto) And Not IsNull(Me!Cliente) Then
    Me.Requery
End If


 Access FAQ:
www.donkarl.com/it
Grand Karl. Perfetto.
Quello che cercavo. Grazie.
Ciao.
Giuseppe.