Crystal & DataGridView

giovedì 04 dicembre 2008 - 08.51

mammamia Profilo | Newbie

Ciao a tutti,

Sto provando CrystalReports da poco per cercare di capirci qualcosa.

Ho creato (tramite wizard di VS2008 C#) una Form1 dove ho messo una DataGridView che mostra gli ordini "Orders" del database SQL Northwind, poi ho
creato una Form2 dove ho inserito il crystalReportViewer e ho creato un nuovo file di report .rpt

Se filtro i dati con il Bindingsource.Filter, come faccio a visualizzare il risultato del DataGridView nel report?

Devo inserire delle using particolari nel progetto? Avevo visto in un sito 'using Crystal.Decisions' ecc ecc

Grazie

PS. Forse sbaglio io a cercare, ma possibile che non sono riuscito a trovare una guida Step-by-Step per questi semplici operazioni?

freeteo Profilo | Guru

>Ciao a tutti,
>
>Sto provando CrystalReports da poco per cercare di capirci qualcosa.
>
>Ho creato (tramite wizard di VS2008 C#) una Form1 dove ho messo
>una DataGridView che mostra gli ordini "Orders" del database
>SQL Northwind, poi ho
>creato una Form2 dove ho inserito il crystalReportViewer e ho
>creato un nuovo file di report .rpt
>
>Se filtro i dati con il Bindingsource.Filter, come faccio a visualizzare
>il risultato del DataGridView nel report?
non c'è niente di diretto, nel senso che anche il bindingsource di fatto è qualcosa che "gestisce" le associazioni dai dati (quindi qualcosa che prendi da qualche parte) e i controlli a video (come le griglie, textbox etc..) ma quello che fa non è altro che tenerli "sincronizzati" ed agganciati.
Il concetto è che cmq una collezione di dati devi averla in qualche modo, tipicamente con query su db, ma potrebbe benissimo arrivare da una collection in memoria generata da codice, da file xml etc...insomma da una "fonte" dati.

Quando hai la fonte dati, la puoi passare al report tramite il metodo "SetDatasource(..)" dell'oggetto report che stai visualizzando, e allo stesso tempo usarla per altre cose.
Ma quello che hai nel binding è una vista (nel tuo caso filtrata) di alcuni dati che hai in memoria, devi passare quella al report, e poi fare nel report tramite la proprietà "SelectionFormula" lo stesso filtro sui dati.
Cmq dipende dal tipo di dati che hai agganciato al bindingsource, magari se puoi postare 1po di codice posso capire meglio ed aiutarti in maniera più precisa, cmq sia il codice per visualizzare una report passandogli la sorgente dati lo trovi qui:
http://www.dotnethell.it/articles/Crystal-Reports-Integration-Windows-Form.aspx (c'è anche un esempio da scaricare)
http://www.dotnethell.it/Forum/messages.aspx?ThreadID=21962



>Devo inserire delle using particolari nel progetto? Avevo visto
>in un sito 'using Crystal.Decisions' ecc ecc
dipende dal codice, cmq il riferimento alle librerie dentro al tuo progetto si aggancia direttamente quando disegni un report, quindi usando da codice gli oggetti di tipo "ReportDocument" lo using lo dovresti mettere ma ti fai aiutare dagli smart-tag di Visaul Studio.



>PS. Forse sbaglio io a cercare, ma possibile che non sono riuscito
>a trovare una guida Step-by-Step per questi semplici operazioni?
effettivamente non è poi così facile trovarne, tuttavia ti lascio qualche link dove puoi cercare:
http://help.sap.com/content/bobj/overview/index.htm
http://service.sap.com/sap/bc/bsp/spn/bobj_download/main.htm
http://www.italy.businessobjects.com/products/reporting/crystalreports/xiresources.asp


Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo

mammamia Profilo | Newbie

Avevo in parte risolto usando "RecordSelectionFormula", non capivo bene come applicarla ma poi ho seguito la tua giuda in questo sito e ho capito come funziona. Comunque i tuoi link sono sempre una risorsa che leggerò senz'altro.

Grazie

freeteo Profilo | Guru

ok, se ti è stata utile una risposta accettala, così marchiamo il thread come risolto.
Grazie.

Ciao.

Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5