Newsgroup: it.comp.appl.access
Titolo: Ricerca in piu' campi

Un saluto a tutti.
Leggendo dei post vecchi ho applicato questo criterio ai tre campi di una
query che mi permette di effettuare delle ricerche :
In pratica in ogni criterio dei tre campi :
like nz(Forms!Miamaschera!miocontrollo;"*")
Ho notato pero' che se uno dei tre campi associati ai tre controlli e' vuoto
in tutti i records la ricerca non mi restituisce niente. E' possibile
ovviare a cio'??
Esempio :    Testo     Num      cod
                    a            1           aa
                    a                         c
                    b            3            cc
Se nella maschera lascio vuoto il 2° e il 3°controllo e nel secondo scrivo
"a" vorrei vedere i primi due records ed invece vedo solo il primo perche'
il campo NUM del secondo record e' vuoto. Si puo' fare ??Dove sbaglio ???
Grazie a tutti

 ha scritto nel messaggio
news:9RVw9.108338$%M1.27...@twister2.libero.it...

Con la funzione Like "*" scritta nei criteri della query verranno
selezionati i record a prescindere dal valore contenuto nel campo, ma Null è
per definizione un non valore, quindi i record che non hanno alcun valore
(Null) nel campo non vengono selezionati.
Ti consiglio quindi di creare nella query tre campi calcolati:
TestoBis: Nz([Testo]; "zzzzzz")
NumBis: Nz([Num]; 999999999)
CodBis: Nz([Cod]; "zzzzzzzz")
e scrivere i criteri
like nz(Forms!Miamaschera!miocontrollo;"*")
per questi tre campi calcolati e non per i tre campi della tabella.
Per maggiori chiarimenti vai sul Sito Comune (link qui sotto) e nella
Sezione Queries leggiti la FAQ di Federico Luciani intitolata "Visualizzare
tutti i records con una query parametrica".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

> "Maicol" news:9RVw9.108338$%
M1.27...@twister2.libero.it
:

    Considera la query seguente, basata sulla tabella Clienti del database
Northwind. In particolare osserva l'uso del tipo "Value" nella definizione
dei parametri e la formula con la funzione Nz nella definizione dei campi
oggetto di ricerca:
        PARAMETERS
            [Zona?]       Value
          , [Fax?]        Value
          , [CampoVuoto?] Value
        ;
        SELECT
            T.[NomeSocietà] AS NomeSocietà
          , Nz(T.[Zona],"") AS Zona
          , Nz(T.[Fax],"")  AS Fax
          , Nz(Null,"")     AS CampoVuoto
        FROM
            Clienti AS T
        WHERE
          (
            Nz(T.[Zona],"") Like Nz([Zona?],"*")
            AND
            Nz(T.[Fax],"")  Like Nz([Fax?],"*")
            AND
            Nz(Null,"")     Like Nz([CampoVuoto?],"*")
          )
        ORDER BY
            T.NomeSocietà
        ;
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------

 Ti ringrazio molto ,vado a provare.

 Maurizio
Ti ringrazio molto, verifichero' e poi ti faccio sapere.
Una curiosita', visto che abbiamo lo stesso cognome, quali sono le tue
origini??


Ho provato ed ovviamente funziona . Un grazie sincero.

 origini??
    Parte vesuviane, partenopee, parte molisane...
(-;
Enzu'... Ma credi che al ng gliene freghi qualcosa? Se proprio sei curioso
di scoprire se siamo parenti, Eva e Adamo a parte, meglio sentirci in
privato.
/;-)
