Newsgroup: it.comp.appl.access
Titolo: OT Traduzione FAQ 3.14

**************************
3.14 Criteria shall return all records
Problem
For a query field you want to use a criteria e.g. a reference
to a control on a form or a parameter. Normally the records
shall be filterd according to this value. However if the criteria
is empty or has a particular value (e.g. "*" or "All") then you
want the query to return all records.
Solution
The following examples show what you can use as criteria:
for a control on a form
[Forms]![MyForm]![MyControl] Or [Forms]![MyForm]![MyControl] Is Null
for an empty parameter
[MyParameter] Or [MyParameter] Is Null
for the * (asterisk) in a control on a form
[Forms]![MyForm]![MyControl] Or [Forms]![MyForm]![MyControl] = "*"
for a parameter that may contain "All"
[MyParameter] Or [MyParameter] = "All"
etc.
If the Or part of the example criteria is True then all records
of the query are returned. Otherwise the records are filtered
as usual by the value in the first part of the criteria expression.
This method only works for a few columns in a query.
If you have more than a few criterias then Access/JET
may have problems to execute the query. In this case it's
better to create an SQL string via code that includes the
criteria only if it has a value. This also improves the SQL
statement and the performance.
*KB article with example DB*
****************************
-- 
cu
Karl
*********
Access FAQ: 
www.donkarl.com/it
 + CISA1, Arezzo, 4+5/6/2005
la prima Conferenza Italiana per Sviluppatori di Access 

 etc.



Karl, ho qualche perplessità sull'utilizzo del termine "criteria". Esso è
il plurale di "criterion", ma mi dai l'impressione che tu utilizzi
"criteria" al singolare e "criterias" al plurale. (Forse sto
sbagliando...oggi è stata una giornata veramente pesante...)
Comunque eccoti la traduzione, che possiamo senz'altro aggiustare:
*********
3.14 Criterio che restituirà tutti i record
Problema
Vuoi utilizzare un criterio per un campo di una query, p. e., un
riferimento ad un controllo di una maschera o ad un parametro.
Normalmente, i record saranno filtrati secondo questo valore. Comunque, se
il criterio è vuoto (non è stato assegnato alcun valore iniziale), o ha un
particolare valore (p. e., “*” oppure “Tutti”), allora vuoi che la query
restituisca tutti i record.
Soluzione
I seguenti esempi mostrano cosa puoi usare come criterio:
per un controllo di una maschera
[Forms]![MiaMaschera]![MioControllo] Or
[Forms]![MiaMaschera]![MioControllo] Is Null
per un parametro vuoto
[MyParameter] Or [MyParameter] Is Null
per l' * (asterisco) in un controllo di una maschera
[Forms]![MiaMaschera]![MioControllo] Or
[Forms]![MiaMaschera![MioControllo] = "*"
per un parametro che potrebbe contenere "Tutto"
[MioParametro] Or [MioParametro] = "Tutto"
etc.
Se la parte “Or” del criterio esempio è Vera, allora vengono restituiti
tutti i record della query. Altrimenti i record sono filtrati, come al
solito, dal valore inserito nella prima parte dell’espressione dei
criterio.
In una query, questo metodo funziona solo per poche colonne.  Se tu hai
parecchi criteri, allora Access/Jet potrebbe avere dei problemi ad
eseguire la query. In questo caso è meglio creare una stringa SQL via
codice, che include il criterio solo se ha un valore. Questo inoltre
migliora la dichiarazione SQL e l’esecuzione.
--
rgrds
SC 
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

...
Sì certo.
So che "criterion" e singolare e "criteria" plurale ma almeno
in riguardo a database solo in teoria. La mia osservazione
è che gli inglesi e americani usano "criteria" per singolare
e plurale o diciamo senza differenziare. Nei libri, NG e nel
kb ho letto mille volte "criteria" e quasi mai "criterion".
Vedi p.e.
http://support.microsoft.com/default.aspx?scid=kb;en-us;151867
"The Text criteria is being compared "
http://support.microsoft.com/default.aspx?scid=kb;en-us;160503
"Date Criteria ... Returns Incorrect Results"
Tutti e due sono trattato come singolare ("is", "return_s_").
Nel nostro procedere qui abbiamo tedesco-->inglese-->italiano
e IMO il "mediatore" in questo caso inutilmente imposta poca
chiarezza perché in tedesco usiamo singolare e plurale in
questo caso ed anche in italiano.
Forse ho un po' esagerato quando ho inventato "criterias"
per il nostro scopo qui. :-)
Ma visto che per te il mio tentativo di creare chiarezza
tra singolare e plurale invece fa confusione è meglio
che ritorno al uso standard in inglese.
-- 
cu
Karl
*********
Access FAQ: 
www.donkarl.com/it
+info sulla prima Conferenza Italiana per Sviluppatori di Access (CISA1) 

 Sì certo.




OK
Allora tu stesso sistemi il singolare ed il plurale secondo i
tuoi "criteri". :-)
Buon week-end.
