Problema con la visualizzazione del parametro passato al report

mercoledì 24 dicembre 2008 - 02.05

luxsor Profilo | Guru

Ciao a tutti, ho il seguente problema:
Ho creato in Crystal Report con VB 2008 che mi stampa tutti gli appuntamenti in una data che li passo come parametro.
La query passata al report funziona perfettamente, mi stampa tutto correttamente, ma il mio problema è che nel design del report ho inserito il campo Parametro che contiene la data che ho preso come riferimento, in modo che mi compaia sulla stampa.
Questo parametro non me lo stampa: è vuoto.

Questo è il codice che sto usando

Dim valData As Date
valData = CDate(txtData.text)

Dim param1Fields As New ParameterFields
Dim param1Field As New ParameterField
Dim param1Range As New ParameterDiscreteValue

param1Field.ParameterFieldName = "data1"
param1Range.Value = valData
param1Field.CurrentValues.Add(param1Range)
param1Fields.Add(param1Field)

frmStampaAppuntamenti.CrystalReportViewer1.ParameterFieldInfo = param1Fields

freeteo Profilo | Guru

Ciao,
quello che faccio io è sempre passare i parametri (ed anche con le formule) al report direttamente, senza passare per il viewer.
Che tradotto in codice è:
ReportDocument report = new ReportDocument(); report.Load(@"...\report.rpt"); report.SetParameterValue("nome", "valore"); crystalReportViewer.ReportSource = report;
e poi il campo parametro ovviamente è visualizzato nel report in qualche sezione.

Prova in questo modo se cambia qualcosa, non vorrei che fosse un problema con il fatto che il parametro venga passato come multivalore, o che non hai impostato correttamente il nome e quindi al report non viene passato...



Ciao.

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

luxsor Profilo | Guru

Ciao Matteo, ho provato come mi hai suggerito tu, ma ogni volta all'avvio del Report mi chiede di inserire il valore, nonostante io lo abbia messo tramite codice.

Come mai questo inconveniente?

freeteo Profilo | Guru

strano, hai un progetto d'esempio da allegarmi?
Così lo provo io e verifico il codice.

Grazie.

Ciao.

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

luxsor Profilo | Guru

Ciao allego un piccolo esempio in vb

freeteo Profilo | Guru

Ciao,
ho fatto 2 prove, il problema è il "RefreshReport()" del CrystalReportViewer, se lo togli il passaggio dei parametri funziona correttamente.

Sinceramente mi sembrava di ricordare qualcosa a riguardo di un'impostazione "KeepValuesOnRefresh" o qualcosa del genere, ma non ho trovato niente a riguardo, forse mi confondo con qualche altro tool.

Cmq togliendo quella riga di codice, i tuoi parametri vengono settati e visualizzati correttamente.

Ciao.

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

luxsor Profilo | Guru

Grande Matteo,
grazie Mille
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