Crystal Reports keeps prompting for Parameter

user1542653 picture user1542653 · Aug 20, 2012 · Viewed 9.8k times · Source

I am having a terrible problem with crystal report 2010 for .net 4.0 (I am using the fixed 13.0.1 version but 13.0.4 is released). No matter which way I try, I am always getting a prompting dialogue box to input my one parameter value the first time.

CrystalReportViewer1.ReportSource = CustomerReport1;    
CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.SetParameterValue("PathLocation", Location.Text);

CustomerReport1.Parameter_PathLocation.CurrentValues.Add(Location.Text) // to be safe using CS 2010 for .net 4
CrystalReportViewer1.ReuseReportParametersOnRefresh = true; // to prevent from showing again and again.

I also tried this:

CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.SetParameterValue("PathLocation", Location.Text);

CrystalReportViewer1.ReportSource = CustomerReport1;

And this:

CustomerReport1.Database.Tables[0].SetDatasource ( this.dataset);        
CustomerReport1.Parameter_PathLocation.CurrentValues.Add(Location.Text)

CrystalReportViewer1.ReportSource = CustomerReport1; // the parameter in the report has Optional Parameter = false, Static , Multiple Value = false .

Can anyone please help? I am getting frustrated with this. It worked in previous versions, but now I am getting this prompt box.

Thank you.

Answer

user1542653 picture user1542653 · Aug 29, 2012

Finally found the solution. It doesn't prompt if we set the DataSource after the ParameterValue.

So anyone of those will work if we put them in this order:

// First, call SetParameterValue. Then, call SetDatasource.     
CustomerReport1.SetParameterValue("PathLocation", Location.Text);
CustomerReport1.Database.Tables[0].SetDatasource(this.dataset);

CrystalReportViewer1.ReportSource = CustomerReport1;

Thank you all.