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
Passare un parametro al report che effettui un filtro sull' sql ...
mercoledì 04 marzo 2009 - 17.59
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
AndreaKpr
Profilo
| Senior Member
265
messaggi | Data Invio:
mer 4 mar 2009 - 17:59
Ciao ragazzi, domandone ...
Ho un report che è collegato alla mia soluzione C#.08
Supponiamo che nel report ho collegato come source la tabella magazzino.
Dal programma con una form apposita renderizzo il report impostando la corretta connection string del db.
Fino a qui tutto bene.
Per complicarsi le cose ho pensato che il report potesse essere filtrato con dei campi che ho in maschera.
C'è modo di passare l'sql che creso con i filtri al report e di utilizzarli nel source ???
Grazie !!! ;op
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
mer 4 mar 2009 - 18:56
Ciao Andrea.
Puoi valorizzare un DataTable a runtime, facendo peò in modo che prenda la stessa struttura di quello che hai usato in fase di design del report, e successivamente assegnarlo alla proprietà DataSource del report.
Facci sapere...
Ciao
AndreaKpr
Profilo
| Senior Member
265
messaggi | Data Invio:
mer 4 mar 2009 - 19:40
Ciao ti ringrazio per la risposta.
Ho capito il tuo intento ma non è ciò che fa al caso mio.
Qui si è trattato un pò l'argomento :
http://www.dotnethell.it/forum/messages.aspx?ThreadID=6073
ma non ho capito se hanno risolto o meno...
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
mer 4 mar 2009 - 19:51
Ciao Andrea.
Puoi fare un esempio pratico?
Perchè da quello che ho capito io .... la mia proposta potrebbe essere risolutiva ..... però sicuramente, come dici tu, non ho capito bene il problema.
Facci sapere...
Ciao
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
mer 11 mar 2009 - 03:01
Ciao, perdona il ritardo nella risposta...ti scrivo lo stesso anche se probabilmente avrai già risolto.
Hai già considerato la possibilità di usare la "recordSelectionFormula" all'interno del report?
Questa proprietà, che puoi tranquillamente gestire anche da codice, impostandola dopo che hai caricato il report la prima volta (facendo solo successivamente un refresh) ti permette di fare dei filtri sui dati successivi alla query.
Guarda questo esempio:
http://www.dotnethell.it/articles/Crystal-Reports-Integration-Windows-Form.aspx
nel listato1 vedi che viene impostato da codice la "RecordSelectionFormula" e cmq a destra del tip c'è anche il download diretto che ti può aiutare a capire il codice.
Non so se è questo quello che cerchi, cmq dacci un'occhiata...
Ciao.
Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
AndreaKpr
Profilo
| Senior Member
265
messaggi | Data Invio:
mer 11 mar 2009 - 13:44
Ciao a tutti e grazie.
Dopo il primo post avevo certaco un pò nel sito trovato ques'esempio.
Direi che è quello che cercavo, ma c'è una piccola complicanza... la sintassi.
Mi spiego io in base ad una maschera ho una serie di filtri, la mia intezione era di passare tutta la "Where" di sql al report.
Ma mi pare di aver capito che non è cosi diretto... dovrei passare al report un filtro campo per campo.
Dico giusto ???
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
mer 11 mar 2009 - 17:16
>la mia intezione era di passare tutta la "Where" di sql al report.
>Ma mi pare di aver capito che non è cosi diretto... dovrei passare
>al report un filtro campo per campo.
>Dico giusto ???
diciamo che devi costruirti si la sintassi per la SelectionForumula del report partendo da quella sql che avrai di ritorno dalla tua maschera di filtri.
Se invece puoi accedere al database, e passargli tu i dati ti basta fare la connessione al db tramite codice, caricare una DataTable e poi passarla al report tramite "SetDataSource" del report stesso.
Nell'esempio che ti ho segnalato viene fatto anche questo, nel metodo "GetDati" ti basta adattare il tuo codice, e quello che puoi passare come sorgente al report deve avere la stessa struttura con cui hai disegnato il report stesso.Per il resto puoi fare qualsiasi query che vuoi tanto la fai in ado.net (da codice) e poi al report arrivano solo i dati da visualizzare sottoforma di "DataTable" e a lui non interessa come l'hai popolata...
Ciao.
Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
AndreaKpr
Profilo
| Senior Member
265
messaggi | Data Invio:
mer 11 mar 2009 - 18:32
Ciao, Si ho capito entrembi i metodi. Il secondo è come diceva jeremy...
Il problema sta nel fatto che del report io non conosco la parte di "Select" della query che farà Crystal in quanto pesonalizzabile dall'utente finale ...
Ora che ho le idee chiare sulla piattaforma decido quale è la strada migliore.
Vi ringrazio entrambi !!!
RiCiao!
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 !