Parametri report for visual studio 2005

martedì 07 novembre 2006 - 11.47

bimbogino Profilo | Newbie

Ciao a tutti,
ho un'applicazione scritta in c# con Visual Studio 2003 e che gira con il framework 1.1
Recentemente ho effettuato il passaggio al framework 2.0 e a visual studio 2005, riscontrando un problema nella visualizzazione dei report.

Alcuni report hanno dei parametri che vengono impostati prima della visualizzazione utilizzando il metodo SetParameterValue.
Nella versione precedente questo faceva sì che il valore dei parametri non venisse richiesto all'apertura del report; adesso invece il report chiede di immettere i valori dei parametri prima di essere visualizzato.
Che altro devo fare per eliminare la richiesta dei valori?

grazie mille
--

BG

freeteo Profilo | Guru

ciao,
la sintassi tra le 2 versioni è rimasta praticamente identica,ed in particolare per questa operazione esattamente la stessa.
Puoi postare 1po di codice tuo, in modo da capire dove puo' essere l'errore? grazie
ciao.

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

bimbogino Profilo | Newbie

Qui ci sono alcuni frammenti del mio codice.
Non so se bastano, casomai fammi sapere se ti serve qualcos'altro.

Questa è la parte in cui viene visualizzato il report:
...... if (toReport is IReportableMod) { this.initializeReport(rrc); } if (toReport is IReportableParam) { //se il report utilizza dei parametri imposta i valori this.setParameters(rrc); } ... rrc.SetDataSource(ds); this.crystalReportViewer1.ReportSource = rrc; this.crystalReportViewer1.Show(); } ....


e questa è la funzione setParameters:

private void setParameters(ReportClass rc) { IReportableParam rp = (this.toReport as IReportableParam); if (rp.Parameters != null) { //rp.Parameters contiene delle coppie nome - valore impostate in precedenza foreach(Pair reppar in rp.Parameters) { rc.SetParameterValue((string)reppar.first, reppar.second); } } }



aggiungo due cose che potrebbero servire:

1 - Cercando fra i thread ho trovato qualcun altro che aveva lo stesso problema:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=8438
(mi scuso di non averlo fatto prima, ma con firefox la ricerca non funziona e credevo che non ci fossero discussioni sull'argomento).
Ho già provato a seguire quel consiglio, ma purtroppo non risolve il problema.

2 - Ho notato che la classe ParameterFieldDefinition ha una proprietà ParameterFieldUsage (che purtroppo è read only) e che può valere: InUse, NotInUse e CurrentValuesProvidedByServer.
Così a occhio mi farebbe comodo se i miei parametri avessero ParameterFieldUsage = CurrentValuesProvidedByServer (invece sono tutti InUse)
Ma nel caso, come si fa ad impostarli in questo modo? Va fatto in fase di design del report?


Grazie per l'aiuto
--
BG

bimbogino Profilo | Newbie

Ho risolto da solo provando un'altra strada:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra


Spero che questo possa essere utile a chi ha un problema analogo.
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