Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
Crystal Reports e reportistica
CR XI: modificare Comando SQL a runtime
giovedì 28 giugno 2007 - 11.06
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ale.orma
Profilo
| Junior Member
68
messaggi | Data Invio:
gio 28 giu 2007 - 11:06
Ciao, il problema di oggi è dato dalla seguente situazione:
con CR XI ho un report la cui origine dei dati è ricavata tramite un Comando SQL (Esperto Database-->Aggiungi comando).
Il testo di questo comando è la mia query Sql fatta su un DB Sql2005.
Ho dovuto fare cosi perchè se, come facevo con CR 8.5, aggiungo le tabelle e i collegamenti, poi non posso più modificare manualmente la query sql che CR genera automaticamente perchè la finestra Database-->Mostra Query SQL è in sola lettura.
Col comando SQL in pratica crea una tabella virtuale che rappresenta i risultati dell'elaborazione del comando stesso. Nell'anteprima del report tutto funziona bene, il problema nasce quando da VB voglio modificare la query con l'istruzione:
myRep.SQLQueryString=strSQL.
Questa istruzione non ha alcun effetto e la query originale del report non varia, mentre per i report in cui non utilizzo Comandi SQL ma ho la lista delle tabelle con i collegamenti con la stessa istruzione posso modificare la query a mio piacimento, applicando alla clausola WHERE o ORDER BY i campi ed i valori che voglio.
Qualcuno sa dirmi come modificare il testo di un Comando SQL a runtime?
AIUTOOOOOOOOOOOOOOO!!!!!!!!!!!!!!!!
ale.orma
Profilo
| Junior Member
68
messaggi | Data Invio:
gio 28 giu 2007 - 14:59
Da quanto sono riuscito a trovare sul sito BusinessObjetcts non è possibile modificare la query di un Comando SQL a runtime.
La selezione dei record l'ho impostata in questo modo (ad. esempio):
myRep.RecordSelectionFormula = "{comando.anno}>=1990 and {comando.anno}<=2000"
Mettendo pure che sia l'unica soluzione, in quanto non posso modificare la clausola WHERE della query del report, qualcuno sa dirmi nel caso di selezioni su molti record la velocità di esecuzione è la stessa di quella che avrei con una query in cui il filtro viene scritto nella clausola WHERE?
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
dom 1 lug 2007 - 17:28
>Da quanto sono riuscito a trovare sul sito BusinessObjetcts non
>è possibile modificare la query di un Comando SQL a runtime.
esatto, confermo hai solo la selectionformula come filtro possibile
>Mettendo pure che sia l'unica soluzione, in quanto non posso
>modificare la clausola WHERE della query del report, qualcuno
>sa dirmi nel caso di selezioni su molti record la velocità di
>esecuzione è la stessa di quella che avrei con una query in cui
>il filtro viene scritto nella clausola WHERE?
sinceramente non ho un documento ufficiale per questo, ma dalla mia esperienza è meglio usare l'ottimizzazione del where nella query con ado.net anche perche' se la cosa è complessa, non hai soluzioni dato che il report lavora sui campi che ha come sorgente anche nei filtri...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !