Dario Sacco
2005-12-19 10:53:05 UTC
Questa è una FAQ moltro frequente già postata, mi scuso per la
monotonia
ma non ho trovato niente di calzante sul SC o il NG.
Devo passare una query con parametri piuttosto complicata ad un report.
1)Ho una tabella "UtentiAttività" dove memorizzo le ore di lavoro
per ogni commessa per ogni utente, strutturata così:
'Data','IDUtente', 'IDCommessa', 'Ore'
2)Ho creato una query a campi incrociati
dove metto in riga la data e la commessa, in colonna 'IDutente'
e in valore le 'Ore'.
Quindi come prima cosa ho una query a campi variabili
poichè gli IDUtenti possono sempre cresere.
Inoltre siccome voglio poter filtrare per una certa commessa
devo passare un parametro testo per il rif. di commmessa.
3) Conosco già il sistema di passare il parametro
alla query con la sintassi [Forms]![Nomeform]![IDcomm param]
ma in questo modo devo creare tante query quanti scono
i conntesti dove voglio utilizzarla.
4)Con il metodo 'querydef' ho già trovato come
aprire un recordset parametrizzato da codice, con il costrutto:
Set dbs = CurrentDb
Set qdf = dbs.QueryDefs("query parametrizzata")
qdf.Parameters!IDCommessa = "2005113"
Set rst = qdf.OpenRecordset
5) Purtoppo non riesco a passare il recordset rst
al mio report, su evento openreport. Il problema del report dinamico
che si adatta al suo recordset non dovrebbe essere un problema
perchè lo stesso prob lo ho risolto nei form, però
mi sembra di capire che anche con Access 2003 PRO, non
c'è la possibilità di passare un DAO.recordset ad un Report.
E' vero?
Possibili soliìuzioni?
monotonia
ma non ho trovato niente di calzante sul SC o il NG.
Devo passare una query con parametri piuttosto complicata ad un report.
1)Ho una tabella "UtentiAttività" dove memorizzo le ore di lavoro
per ogni commessa per ogni utente, strutturata così:
'Data','IDUtente', 'IDCommessa', 'Ore'
2)Ho creato una query a campi incrociati
dove metto in riga la data e la commessa, in colonna 'IDutente'
e in valore le 'Ore'.
Quindi come prima cosa ho una query a campi variabili
poichè gli IDUtenti possono sempre cresere.
Inoltre siccome voglio poter filtrare per una certa commessa
devo passare un parametro testo per il rif. di commmessa.
3) Conosco già il sistema di passare il parametro
alla query con la sintassi [Forms]![Nomeform]![IDcomm param]
ma in questo modo devo creare tante query quanti scono
i conntesti dove voglio utilizzarla.
4)Con il metodo 'querydef' ho già trovato come
aprire un recordset parametrizzato da codice, con il costrutto:
Set dbs = CurrentDb
Set qdf = dbs.QueryDefs("query parametrizzata")
qdf.Parameters!IDCommessa = "2005113"
Set rst = qdf.OpenRecordset
5) Purtoppo non riesco a passare il recordset rst
al mio report, su evento openreport. Il problema del report dinamico
che si adatta al suo recordset non dovrebbe essere un problema
perchè lo stesso prob lo ho risolto nei form, però
mi sembra di capire che anche con Access 2003 PRO, non
c'è la possibilità di passare un DAO.recordset ad un Report.
E' vero?
Possibili soliìuzioni?