Problema passaggio parametri ad un report da web

venerdì 07 settembre 2007 - 09.08

fofofree Profilo | Newbie

Ciao a tutti !
Oggi ho scoperto questo sito e mi piace tanto !
Fatta questa premessa (che forse a pochi può interessare ) vi espongo il mio problema :
Ho creato un Report (con sql server 2005) che accetta 3 parametri (un intero e 2 stringhe).
Tale report deve essere visualizzato in un'applicazione web ,che sto sviluppando con Visual Studio 2005 , attraverso il controllo Report Viewer . Qualcuno saprebbe dirmi come posso passare i valori dei parametri al report da codice ?
Grazie a tutti anticipatamente.

freeteo Profilo | Guru

ciao,
usare il reportviewer per visualizzare i report implica di lavorare sulla sua proprieta' "LocalReport" che sara' quello che gli dici di caricare.
Intendo qualcosa come:

... LocalReport report = this.reportViewer1.LocalReport; ReportParameter parametro = new ReportParameter("nomeParametro", "valore"); report.SetParameters(new ReportParameter[] { parametro }); this.reportViewer1.RefreshReport(); ...

se invece lavori con il report sul server di report e lo visualizzi soltanto, puoi accederci con:

reportViewer1.ServerReport.SetParameters(...

se non hai capito tanto, magari prova a postare qualche pezzo di codice che usi tu, cosi' vediamo quale tecnica è la piu adatta a te...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

fofofree Profilo | Newbie

Ciao !
Grazie per l'aiuto infatti ho risolto con il metodo SetParameters() !!!
Vorrei però fare in modo che il report sia visualizzato in formato pdf. Mi hanno detto che esiste un metodo ... per caso qualcuno sa qual'è...mi risparmio un pò di ricerca!!
Grazie ancora!

freeteo Profilo | Guru

ciao,
ti suggerisco questo codice, prova ad adattarlo 1po alla tua situazione:

LocalReport mioreport = reportViewer1.LocalReport; mioreport.ReportPath = "c:\\.......\\mioreport.rdlc"; Warning[] warnings; string[] streamids; string mimeType; string encoding; string filenameExtension; byte[] bytes = mioreport.Render( "Pdf", null, out mimeType, out encoding, out filenameExtension, out streamids, out warnings); using (FileStream fs = new FileStream("c:\\mioreport.pdf", FileMode.Create)) { fs.Write(bytes, 0, bytes.Length); } ...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

fofofree Profilo | Newbie

Grazie a tutti ! Ho risolto ! L'unico fenomeno strano è il seguente (magari qualcuno si è trovato nella mia stessa situazione ...) :
Il report l'ho sviluppato in locale , e quando vado in anteprima , il layout è coerente .
Sul server copio il file .rdc e lo visualizzo in Gestione Report . Qui il layout è completamente "sballato" , le linee sono disallineate e le tabelle idem .
Ho confrontato i file xml (quello del report locale e quello del server ) ma sono identici !
Da cosa può dipendere ?
PS: Quando però converto (da server) il file in pdf la visualizzazione è normalizzata !

Help!
PS2: Grazie ancora a tutti !!!

freeteo Profilo | Guru

ciao,
non è che sia un problema di css? magari hai qualcosa che ti influenza l'output (che è cmq sempre HTML) della pagina...penso ad un Theme...
ciao.

Matteo Raumer
[MCAD .net]
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