天天看点

水晶报表,解决——提示“您请求的报表需要更多信息.”

水晶报表,解决——提示“您请求的报表需要更多信息.”

.net 2008-10-18 20:37:07 阅读634 评论0 字号:大中小

        string sql = "Select * from Orders";

        string DBConfig_sql = @"Data Source=WAN-9013A0BB35C/SQL2005;Initial Catalog=Northwind;User ID=sa";

        DataSet ds = new DataSet();

        SqlConnection sqlCon = new SqlConnection(DBConfig_sql);

        SqlCommand sqlCmd = new SqlCommand(sql, sqlCon);

        SqlDataAdapter sqlAd = new SqlDataAdapter();

        sqlAd.SelectCommand = sqlCmd;

        sqlAd.Fill(ds, "Orders");

        CrystalReportSource1.ReportDocument.Load(Server.MapPath("CrystalReport.rpt"));

        //注意此处必需指明Dataset中的表的名称,否则会提示“您请求的报表需要更多信息.”

        CrystalReportSource1.ReportDocument.SetDataSource(ds.Tables["Orders"]);

        //{?}中的参数可以不用赋值,即使赋了值也不起作用。

        CrystalReportSource1.ReportDocument.ParameterFields["Parm"].CurrentValues.AddValue("1234567");

        CrystalReportSource1.ReportDocument.ParameterFields["Title"].CurrentValues.AddValue("这时推模式的报表样例!");

        CrystalReportSource1.DataBind();

        CrystalReportViewer1.ReportSource = CrystalReportSource1;

        CrystalReportViewer1.DataBind();

总结:

连数据库

填充dataset

报表查看器获取ReportDocument(报表