Newsgroup: it.comp.appl.access
Titolo: Funzione come criterio di selezione

E' possibile usare come criterio di selezione di una query una funzione?
Più precisamente: ho una serie di record di una tabella che dovrebbero
costituire tutti quanti in OR il criterio di selezione di una query, come
fare?
Pensavo di creare in un modulo attraverso una funzione che la restituirà una
stringa del tipo:
 "dato_1" Or "dato_2" ... OR "dato_n"; il richiamo alla funzione però
scombina tutti gli altri criteri di quella query che vengono cancellati, è
normale?
Saluti
Pino
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 normale?
Non ho capito molto bene che tipo di test devi fare, ma normalmente io
faccio cosě:
la funzione la metto come campo calcolato, passando uno o piů campi da
testare come parametri.
A quel punto la funzione fa tutta una serie di controlli sui valori passati
e restituisce true o false se il test č passato o meno.
Sotto il campo calcolato metto come criterio True
Antonio

 Antonio
Ottimo, grazie.
I campi da passare come parametri sarebbero nel mio caso tutti i record
(costituiti da un unico campo testo) di un'altra tabella. Per spiegarmi:
prima mettevo nei tutti questi valori  legati da un OR, perň, siccome ogni
tanto bisogna cambiarli, non č bello andare a modificare tutte le volte la
struttura della query e quindi pensavo che sarebbe utile metterli in una
tabella in modo che anche un utente diguno di access possa attraverso
un'opportuna maschera cambiarli.
Saluti
Pino

 Pino
Vedi se questa FAQ può essere quello che chiedi.
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=184
@Alex

 ha scritto nel messaggio
news:1y2djpao8tans.y...@40tude.net...

Ma sai che continuo a non capire che razza di filtro fai?
Antonio

 Antonio
Colpa mia che non sono in possesso di un linguaggio adatto alle
problematiche di access.
Provo a esporre il quesito in altro modo:
Come faccio a cambiare spesso i criteri di una query senza entrare in
modalità struttura?
Esempio: devo filtrare in base ad alcune tessere del campo "tessere"
Ovvero devo selezionare i records relativi alle seguenti tessere: 56,
45,467,927. Molto semplicemente metto nei criteri di selezione questo: "56"
OR "45" OR "467" Or "927".
Mettiamo il caso che il numero delle tessere vari; entro pertanto in
modalità struttura della query e tolgo, per dire la 467 e aggiungo la 333 e
la 425. il nuovo criterio sarà: "56" OR "45" OR "333" OR "425" OR "927".
Se però queste variazioni deve farle mia moglie, che non conosce access
manco per niente, non posso pretendere che si metta a modificare la query,
ma devo trovare un modo per passare questi parametri in altro modo che non
sia scriverli direttamente nella riga dei criteri, ecco.
Saluti
Pino

 Pino
Si costruisce il filtro con IN
strFilter="NomeCampo IN (46,49,56,76)"
Ora non sò come rendi disponibile la selezione dei Numeri, ma se fosse
con una ListBox
in multiselezione la cosa sarebbe molto semplice e banale con 3 righe
di codice...!
@Alex


Visto quello che ha scritto io sarei per l'uso di "filtro in base a 
maschera"
-- 
ac
y-1=x

 y-1=x
Di sicuro è più semplice da gestire per chi non ha eccessiva
dimestichezza...
Io non lo uso mai però e difficilmente mi viene da suggerirlo...!
@Alex

 @Alex
Grazie è sutilissima però quello che devo passare alla query è un insieme
di numeri.
Saluti
Pino 

 @Alex
Calma, per me di semplice e banale non c'è nulla in access. Se nel mio db
ci sono righe di codice che fanno cose fuori dall'ordinario è perche sono
semplicemente copiate ed adattate ...
Pino

 ha scritto nel messaggio
news:10no3pwrzl6fl$.1j0igfzdg1amx$.dlg@40tude.net...

OK
Prepara una tabella chiamata filtro che ha un unico campo, diciamo
filtro_tessera.
Poi la metti in join con la tua tabella dati sul campo tessere.
Non metti nessun altro criterio di filtro.
A tua moglie gli dici soltanto di andare dentro la tabella filtro_tessera
dove dovrà mettere record solo per i numeri che servono.
Spero che almeno la cancellazione o la modifica o l'aggiunta di record sia
in grado di farla.
Mi sembra la soluzione meno impegnativa per una moglie :-PPP
Antonio