Newsgroup: it.comp.appl.access
Titolo: Criterio iif nella query con operatori di confronto

Salve a tutti ragazzi,
ho un problema assurdo che mi sta facendo perdere un sacco di tempo, e
del quale sinceramente non riesco più a trovare la soluzione,
in breve, ho una maschera"miaform" con un gruppo di opzioni "valore"
che può essere 1 o 2, se valore=1 allora nella query devono comparire
tutti i valori di un campo numerico, se è 2 mi deve dare solo quelli
maggiori di zero; l'inghippo è qui, la query si comporta in maniera
inspiegabile:
ecco il criterio nella query:
=IIf([Forms]![miaform]![valore]=1;[miatabella].[miocampoquery];[miatabella].[miocampoquery]>0)
così se scelgo 2 mi restituisce solo quelli con lo zero!!!!
se scelgo 1 ok me li dà tutti,
ho provato a mettere gli apici le virgolette, niente è come se non
considerasse la seconda parte dell'iif o se la considera, a modo
suo!!!!
Qualche aiuto???

 ha scritto nel messaggio 
news:1165307091....@j72g2000cwa.googlegroups.com...
Salve a tutti ragazzi,







Qualche aiuto???
----------------------------
Prova con Switch (leggi guida).
Ciao, Carlo

Ho letto la guida, ho scritto il codice....
Switch([miaform]![miamaschera]![miovalore]=1;[miatabella].[miocampo([miaform]![miamaschera]![miovalore]=2;[miatabella].[miocampo([miaform]>0)
ma il risultato è identico!!!!
selezionando 2 nella maschera mi da solo i valori con lo zero!!!!
non so più come fare...stà cosa è abbastanza preoccupante.
Grazie, comunque.

 ha scritto nel messaggio 
news:1165331521.3...@f1g2000cwa.googlegroups.com...





Grazie, comunque.
------------------------------------------
Puoi mandarmi un mdb con la sola tabella interessata e due righe di 
spiegazione?
Ciao, Carlo

Certamente, già fatto.
grazie ancora.
Ciao.

 ha scritto nel messaggio 
news:1165335603.0...@79g2000cws.googlegroups.com...
Certamente, già fatto.
grazie ancora.
Ciao.
------------------------------
La risposta e la soluzione è già nella tua posta.
Per il NG devo dire che non sono riuscito a trovare una soluzione con le 
caratteristiche chieste da Massimiliano.
Ho dovuto ricorrere ad una querydef creata al volo da codice e che comunque 
viene ricreata ogni volta che si verifica la condizione ipotizzata ed è 
permanente nel db; dunque potrà essere usata a piacimento.
Sarebbe interessante se Giorgio Rancati, leggendo questo post, potesse 
fornire una soluzione alternativa in classico sql.
Ciao, Carlo

Forms!TuaForm!TuoControllo-2 Or Forms!TuaForm!TuoControllo=1
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 

0 Or Forms!TuaForm!TuoControllo=1


Karl sei davvero un grande!!!!
Thanks!!!
Grazie anche a tutti gli altri che mi hanno aiutato ed un saluto a
tutto il NG

0 si capisce...
Or Forms!TuaForm!TuoControllo=1 come si traduce? In pratica come funziona?
Ciao, Carlo 

 Or Forms!TuaForm!TuoControllo=1 come si traduce? In pratica come funziona?
Con
TuoCampo > 0
Or
Forms!TuaForm!TuoControllo = 1
nel WHERE ci sono 2 espressioni che prima sono evaluate
separatamente. Poi i risulti delle espressioni sono evaluate
insieme sotto le regole dell'operatore Or (descritto nel <F1>).
Il principio è che se il "totale" dei criteri è Vero per una riga,
la riga è nel risultset.
La prima espressione è Vero per le righe dove TuoCampo è > 0.
Se il valore nella maschera _non_ è 1 il risultato della seconda
espressione è Falso. Però grazie all'Or ancora vediamo tutte le
righe dove TuoCampo è > 0 perché basta che uno delle due
espressioni è Vero. (Vero Or Falso = Vero)
Non vediamo le righe dove TuoCampo non è > 0.
(Falso Or Falso = Falso)
Se il valore nella maschera è 1 l'espressione e Vero per ogni riga.
Vediamo tutte le righe. (Vero Or Vero = Vero, Falso Or Vero = Vero)
-- 
cu


 ha scritto nel messaggio 
news:4tooc2F...@mid.individual.net...

Grazie!
Ciao, Carlo