我到处看了看,进行了大量研究,测试了许多不同的人的代码,但在尝试打开向报告发送两个参数的水晶报告时仍然遇到同样的问题。
每次打开它都会打开空白。我在查看器上点击刷新,它会询问参数并打开就好了。
我的代码在下面列出。我在最后期限。如果有人能看到这个并帮助我,我将不胜感激。经过数小时的研究,我迷失了方向。
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(@"C:\reports\myReport.rpt");
cryRpt.SetDatabaseLogon("", "", "MyServer", "MyDB");
ConnectionInfo c = new ConnectionInfo();
c.ServerName = "MyServer";
c.IntegratedSecurity = true;
c.DatabaseName = "MyDB";
CrystalDecisions.CrystalReports.Engine.Tables CrTables = cryRpt.Database.Tables;
foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
{
CrystalDecisions.Shared.TableLogOnInfo crtableLogoninfo = CrTable.LogOnInfo;
crtableLogoninfo.ConnectionInfo = c;
CrTable.ApplyLogOnInfo(crtableLogoninfo);
}
cryRpt.SetParameterValue("@parmBeginDate", "01-01-2010");
cryRpt.SetParameterValue("@parmEndDate", "03-30-2013");
crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();
crystalReportViewer1.Show();