Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

ACCESS 2010 - query con parametri

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

ACCESS 2010 - query con parametri

Postdi spazio1999 » 09/01/12 17:45

Ho necessità di creare una query con parametri su un db con Access 2010. Vorrei che l'inserimento avvenisse attraverso una maschera per la raccolta dei parametri, con campi presi da caselle di riepilogo. Ho provato più volte la procedura illustrata nella guida di Access: query con parametri - creare una maschera per la raccolta di parametri, ma non riesco a far funzionare la cosa. Pare che la query non "veda" la maschera creata e richieda gli imput attraverso la normale finestra di dialogo.
Avete un aiuto da darmi ?

Grazie
spazio1999
Newbie
 
Post: 7
Iscritto il: 09/01/12 17:36

Sponsor
 

Postdi archimede » 09/01/12 20:27

Com'è l'SQL della query che hai creato?

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re: ACCESS 2010 - query con parametri

Postdi spazio1999 » 11/01/12 16:05

Ciao Archimede, sotto c'è l'SQL.

SELECT iscrizioni.[progressivo iscrizione], anagrafica.[ragione sociale], anagrafica.[partita iva], iscrizioni.sezione, iscrizioni.classe, iscrizioni.note
FROM anagrafica INNER JOIN iscrizioni ON anagrafica.[partita iva] = iscrizioni.[partita iva]
WHERE (((iscrizioni.sezione)=[Maschere]![Inserisci sezione e classe test]) AND ((iscrizioni.classe)=[Maschere]![Inserisci sezione e classe test]![Inserisci classe]) AND ((iscrizioni.[uscito dalla classe])=False) AND ((iscrizioni.[uscito dalla sezione])=False));

La maschera di input si chiama "Inserisci sezione e classe test", mentre "iscrizioni" e "anagrafica" sono tabelle.

Visto che sei così gentile, ne approfitto anche per un'altra domanda: voglio che all'apertura del db automaticamente compaia una maschera. Sono stato in File-Opzioni-Database corrente ed ho attivato il "visualizza maschera". All'avvio la maschera si apre regolarmente, ma rimangono visibili la barra di ridimensionamento a sx e le altre barre dei comandi in alto. C'è un modo perchè compaia solo la maschera ?

Grazie
spazio1999
Newbie
 
Post: 7
Iscritto il: 09/01/12 17:36

Postdi archimede » 12/01/12 09:09

Codice: Seleziona tutto
SELECT i.[progressivo iscrizione], a.[ragione sociale], a.[partita iva], i.sezione, i.classe, i.note
  FROM anagrafica AS a INNER JOIN iscrizioni AS i
    ON a.[partita iva] = i.[partita iva]
  WHERE i.sezione = [Maschere]![Inserisci sezione e classe test]
   AND i.classe  = [Maschere]![Inserisci sezione e classe test]![Inserisci classe]
   AND i.[uscito dalla classe]  = False
   AND i.[uscito dalla sezione] = False;
La quarta riga è sbagliata.
C'è un modo perchè compaia solo la maschera ?
Francamente non saprei, mai usato Access 2010. Puoi provare questo oppure puoi provare a convertire il tutto in formato ACCDE (attento però a conservare una copia del file in formato "normale": ACCDE non è modificabile).

HTH.

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re: ACCESS 2010 - query con parametri

Postdi spazio1999 » 12/01/12 18:06

Caro Archimede, ho provato ma non mi funziona ancora. All'avvio della query non compare la mia maschera di raccolta parametri, ma la finestra di dialogo standard.
In pratica una finestra di dialogo con scritto "Immettere il valore del parametro" e sotto "Maschere!Inserisci sezione e classe test!Inserisci classe". Sotto ancora lo spazio bianco per l'inserimento e i pulsanti OK e ANNULLA.
E' come se considerasse il comando come un testo e lo proponesse come nome del parametro da inserire.

Hai qualche altro suggerimento da darmi ?

Grazie, Marco
spazio1999
Newbie
 
Post: 7
Iscritto il: 09/01/12 17:36

Postdi archimede » 12/01/12 18:47

spazio1999 ha scritto:All'avvio della query non compare la mia maschera di raccolta parametri, ma la finestra di dialogo standard.
Non è così funziona: quando lanci la query la maschera deve già essere aperta (e i campi correttamente valorizzati).

La cosa più semplice in pratica credo sia mettere nella form un bottone che lancia la query: vedi qui (in inglese).

HTH.

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re: ACCESS 2010 - query con parametri

Postdi spazio1999 » 23/01/12 18:09

Perfetto, tutto funziona. Caso risolto, grazie Archimede.
spazio1999
Newbie
 
Post: 7
Iscritto il: 09/01/12 17:36

Re: ACCESS 2010 - query con parametri

Postdi vesant » 29/02/12 12:31

Buongiorno a tutti! :)
Scusate se ritiro fuori questo post ma mi sembrava il più vicino alla mia necessità. Ho provato a seguire le indicazioni di archimede ma evidentemente sbaglio qualcosa (sono un utente access veramente alle prime armi).
Spiego il mio problema.
Vorrei realizzare una maschera in cui andare ad inserire i parametri per una query per poi aprire un report. La tabella da cui devo prendere i dati (e c'è solo UNA tabella da analizzare) ha campi di testo e anche si/no, quindi la mia maschera avrà caselle di testo e caselle di controllo.
Dopo varie prove sono riuscito a fare solo pezzi di quello che cercavo, ma non tutto...
Per semplificare ho creato una tabella chiamata "test", al cui interno ci sono 2 campi di testo "mese" "anno", e un campo si/no "vendita". (molto semplice e senza senso, ma voglio partire dal piccolo per capire bene, poi la tabella più incasinata la sistemo dopo).
La maschera chiamata (con fantasia) "maschera_test" e la query (sempre usando molta fantasia) "query_test". Concludendo con l'apice della fantasia "report_test".

C'è qualche buon samaritano che riesce ad aiutarmi?

Grazie mille per il tempo!!
:)
vesant
Newbie
 
Post: 5
Iscritto il: 29/02/12 12:11

Re: ACCESS 2010 - query con parametri

Postdi wallace&gromit » 29/02/12 16:11

ciao vesant,
non capisco bene dove ti sei arenato.
Riesci a creare la maschera di controllo?
Se, con la maschera aperta, lanci il report vedi qualcosa?
Se nei tuoi campi di report hai immesso una condizione "If" che fa riferimento ad uno dei campi della maschera dovresti già ottenere un filtro dei dati della tabella in funzione della maschera.
stato 2014: Office2003/2013 su win7
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1420
Iscritto il: 16/01/12 14:21

Re: ACCESS 2010 - query con parametri

Postdi vesant » 29/02/12 17:05

Ciao wallace!
Grazie per la risposta.
La maschera la creo (magari sbaglio qualcosa già li), solo che tutte le query che ho provato non accettavano quello che inserivo nella maschera e non funzionava niente. In pratica non si "collegavano" maschera e query.

Non so bene come dev'essere la sintassi con l'IF...

Mi sa che non mi riesco a spiegare bene...
vesant
Newbie
 
Post: 5
Iscritto il: 29/02/12 12:11

Re: ACCESS 2010 - query con parametri

Postdi wallace&gromit » 29/02/12 22:08

ciao vesant,
mi correggo, in questo caso la cosa migliore è usare la condizione "Dove".
In visualizzazione strutture della tua query attivi una colonna a destra di quelle che riportano i dati della tabella. in alto inserisci il valore che vuoi controllare con la maschera.
Come formula selezioni "Dove" (se non sono visibili le formule devi selezionare un'icona con la "sigma" greca nel menu in alto).
Nella riga criteri scrivi: [forms]![Maschera_test]![criterio]

Nella maschera test dovrai avere già inserito un controllo con il nome criterio e questa maschera deve essere attiva quando lanci la query, altrimenti non sa cosa cercare (per questo nel post precedente si consigliava di inserire un pulsante nella maschera stessa per attivare la query).
Prova così e facci sapere.
stato 2014: Office2003/2013 su win7
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1420
Iscritto il: 16/01/12 14:21

Postdi archimede » 01/03/12 08:53

vesant ha scritto:voglio partire dal piccolo per capire bene, poi la tabella più incasinata la sistemo dopo
Saggia idea.
vesant ha scritto:La maschera chiamata (con fantasia) "maschera_test" e la query (sempre usando molta fantasia) "query_test".
Com'è l'SQL di query_test?

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re:

Postdi vesant » 01/03/12 11:52

Ciao!
Rispondo prima ad archimede dato che mi è più facile, poi faccio i tentativi suggeriti da wallace e riporterò.
Dunque, l'SQL non penso aiuti molto perchè nelle mille prove ho fatto e disfatto tutto e al momento ho solo uno schifino di codice, che però non funzia....
Codice: Seleziona tutto
SELECT *
FROM test
WHERE mese=[Maschere]![maschera_test];


L'unica cosa che si avvicinava a quello che avevo intenzione di fare, ma apriva una casella di testo per i fatti suoi e non prendeva i dati della maschera, era questo:
Codice: Seleziona tutto
SELECT *
FROM test
WHERE (((mese)=[Selezionare mese]));


Questo funzionava, nel senso che una volta inserito il mese e dato l'ok effettivamente svolgeva bene la query, ma non è quello che cerco dato che la maschera non viene usata (ovviamente mi rendo conto che nel secondo codice non specifico di usare la maschera, quindi era impossibile che la usasse).

Grazie a tutti!

Ora vado a fare le prove che mi ha suggerito wallace
vesant
Newbie
 
Post: 5
Iscritto il: 29/02/12 12:11

Postdi archimede » 01/03/12 12:56

Non funzia perché è sbagliato. Prova
Codice: Seleziona tutto
SELECT *
  FROM test
 WHERE mese=[Maschere]![maschera_test]![nome_campo_mese_della_maschera];
HTH.

Alessandro
archimede
Moderatore
 
Post: 2755
Iscritto il: 07/11/02 12:41
Località: Genova

Re: ACCESS 2010 - query con parametri

Postdi wallace&gromit » 01/03/12 13:00

la prima SQL non è male (assomiglia molto alla mia) ma manca l'oggetto della maschera cui devi fare riferimento (io con fantasia addirittura inferiore alla tua l'ho chiamato "criterio").
dove ho scritto "forms" probabilmente tu devi scrivere "maschere".
Prova con:
Codice: Seleziona tutto
SELECT test.mese, test.anno, test.vebdita
FROM test
WHERE ((test.mese)=[Maschere]![maschera_test]![criterio]);
stato 2014: Office2003/2013 su win7
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1420
Iscritto il: 16/01/12 14:21

Re: ACCESS 2010 - query con parametri

Postdi wallace&gromit » 01/03/12 13:02

ops! c'era già archimede, ma vedo che siamo unanimi.
P.S. ho scritto vebdita invece di vendita! :oops:
stato 2014: Office2003/2013 su win7
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1420
Iscritto il: 16/01/12 14:21

Re: ACCESS 2010 - query con parametri

Postdi vesant » 01/03/12 13:52

Archimede, Wallace&Gromit
GRAZIE!!!
Ora va, ho capito gli orrori che stavo facendo. Ora mi lancio nelle creazione del db "vero".
Siete stati preziosissimi, gentilissimi e rapidissimi!!!

Grazie di nuovo e buona giornata!!!!

Federico
vesant
Newbie
 
Post: 5
Iscritto il: 29/02/12 12:11

Re: ACCESS 2010 - query con parametri

Postdi vesant » 01/03/12 16:49

Breve post giusto per marchiare il mio problema come "SOLVED".
Ho fatto il db vero e funziona tutto.
grazie ancora per l'assistenza
vesant
Newbie
 
Post: 5
Iscritto il: 29/02/12 12:11


Torna a Applicazioni Office Windows


Topic correlati a "ACCESS 2010 - query con parametri":


Chi c’è in linea

Visitano il forum: PcBase e 8 ospiti