Newsgroup: it.comp.appl.access
Titolo: Query campi incrociati......aggiornamento dinamico

Salve a tutti!
E' possibile rendere, una query a campi incrociati, dinamica?
Cioè, specifico un intervallo di data proveniente da due controlli non
associati, ad esempio una settimana. Quindi mi crea le colonne da Lunedi a
Domenica di un determinato intervallo di data impostato, come criterio.
Fin qui, tutto bene ma......volendo cambiare intervallo di data, da cambiare
con comodità da due controlli presenti in una maschera, la query non funge
più.
Grazie anticipatamente.
Marco.

 ha scritto nel messaggio
news:MI2sc.231830$hc5.9...@news3.tin.it...

In una query a campi incrociati parametrica e/o in una query su selezione
parametrica su cui è basata una query a campi incrociati, affinché il tutto
funzioni è INDISPENSABILE esplicitare il tipo dati dei parametri.
A tale scopo apri la struttura della query e dal menu Query seleziona il
comando Parametri... .
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 ha scritto nel messaggio
news:GWhsc.69764$Qc.28...@twister1.libero.it...

Carissimo Roberto,
nella fretta di "postare" sicuramente non sono stato abbastanza chiaro ad
esporre il mio problema:
voglio semplicemente segnalare che, nella query in argomento, mettendo un
criterio nel campo Data e specificare un intervallo
Between Forms!MioControllo!DataInizio And Forms!MioControllo!DataFine,
sembrerebbe che questo tipo di query non accetti "variabili" provenienti da
controlli, non associati, da una maschera creata, all'occasione, per
immettere l'intervallo anzidetto (non so se ho detto una "bippata"), e pare
che accetti SOLO campi e/o controlli, esistenti in tabelle (chiaramente con
la maschera aperta).
Penso di ricorrere ad uno stratagemma e, cioè, crearmi una "query di
creazione tabella", ove "fisso" l'intervallo che m'interessa e poi mandare
in esecuzione la "query a campi incrociati" direttamente dalla nuova tabella
creata. - A male estremi, estremi rimedi - :-))
So benissimo che, forse, non è la strada migliore ma, pian piano,
consultando questo MERAVIGLIOSO forum, nonchè altrettanti PALADINI, spero di
dare anch'io il mio contributo a chi, come me, ha bisogno ancora, di molto
aiuto.
Comunque se esiste una soluzione molto più rapida, sono TUTT'OCCHI! :-))
Grazie anticipatamente.
Marco.

 ha scritto nel messaggio
news:NDisc.324299$rM4.13...@news4.tin.it...

Ma, come ti ho suggerito, il tipo dati dei parametri che devi digitare li
hai ESPLICITATI?
Torno a ripetere che se non l'hai fatto (nel tuo caso devi indicare che sono
di tipo data) non riuscirai comunque a rendere parametrica una query a campi
incrociati.


 ha scritto nel messaggio
news:iWmsc.17797$Wc.6...@twister2.libero.it...

Nella query in questione, attivo il menu query > Parametri e gli indico che
il campo data è di tipo Data/Ora.
Purtroppo, anche con la maschera aperta non associata "Settimane" dove
insistono due controlli, non associati, ove imposto l'intervallo, ad
esempio, il controllo DataInizio imposto a 01/05/2004 e DataFine 07/05/2004,
continua a ridarmi lo stesso errore:
"The Microsoft Jet database engine does not recognize
"[Forms]![Settimane]![dal]" as a valid field name or expression"
Comunque, il codice in SQL, relativo alla query campi incrociati, è il
seguente:
PARAMETERS data DateTime;
TRANSFORM First(servizio.servizio) AS PrimoDiservizio
SELECT [qualifiche].[qualifica] & " " & [cognome] & " " & [nome] AS
Dipendente
FROM qualifiche INNER JOIN (dipendenti INNER JOIN servizio ON
dipendenti.IDdipendente = servizio.iddipendente) ON 
qualifiche.id
 =
dipendenti.qualifica
WHERE (((servizio.data) Between [Forms]![Settimane]![dal] And
[Forms]![Settimane]![al]))
GROUP BY [qualifiche].[qualifica] & " " & [cognome] & " " & [nome],
qualifiche.id
ORDER BY 
qualifiche.id
, servizio.data
PIVOT servizio.data;
Non so che fare e mi appello alla tua pazienza.
Grazie anticipatamente.
Marco.

 ha scritto nel messaggio
news:6Tosc.327113$rM4.13...@news4.tin.it...

Access sa da solo, senza che glielo espliciti, che il campo servizio.data è
di tipo Data/ora; quello che si apetta gli venga detto è che tipo dati hanno
non i campi delle tabelle ma i parametri contenuti nelle caselle di testo
della maschera Settimane; per cui non devi scrivere:
PARAMETERS data DateTime;
ma devi scrivere:
PARAMETERS Forms!Settimane!dal DateTime, Forms!Settimane!al DateTime;


 ha scritto nel messaggio
news:ZQEsc.19359$Wc.6...@twister2.libero.it...

Come al solito, non so come ringraziarti!
Mi mancavano questi dettagli e/o informazioni riguardante le query.
Funziona ALLA GRANDE!
Grazie ancora.
Marco.