-1

我以单一形式完成了我的按钮和报告查看器。但是,我的报告没有显示,也没有数据。

private void btnGenerate_Click(object sender, EventArgs e)
{
    string connectionstring = "MultipleActiveResultSets=True;Data Source=ECSTSRD;Initial Catalog=SSWSQL;User ID=sswuser;Password=sswuser123";
    SqlConnection myconnection = new SqlConnection(connectionstring);

    myconnection.Open();

    string sql = "SELECT customer, imp_license_no, psq_level FROM customer WHERE customer= @cust1";

    SqlCommand custcom = new SqlCommand(sql, myconnection);

    custcom.Parameters.AddWithValue("@cust1", cboFrom.SelectedValue.ToString());

    SqlDataAdapter da = new SqlDataAdapter(custcom);
    DataSet1 ds = new DataSet1();
    da.Fill(ds, "customer");

    cboFrom.DataSource = ds.Tables["customer"];
    cboFrom.DisplayMember = "customer";
    cboFrom.ValueMember = "customer";

    myconnection.Close();

    LocalReport report = new LocalReport();

    reportViewer1.Reset();
    reportViewer1.LocalReport.ReportPath = "Report1.rdlc";
    reportViewer1.LocalReport.DataSources.Clear();
    reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", customerBindingSource));
    reportViewer1.LocalReport.Refresh();
}
4

2 回答 2

1

快速浏览后,我怀疑这与此有关

reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", customerBindingSource));

customerBindingSource在您的代码中看不到任何地方。它可能应该引用数据表ds.Tables["customer"]

于 2013-10-29T04:07:03.637 回答
0
    1-reportViewer1.Reset();
    2-reportViewer1.LocalReport.DataSources.Clear();
    3-reportViewer1.LocalReport.ReportPath = "Report1.rdlc";
    4-reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", customerBindingSource));
    5-reportViewer1.LocalReport.Refresh();
    6- reportViewer1.RefreshReport();

你应该确定 rdlc 文件中的设计就像数据集设计一样

于 2015-02-10T22:51:55.403 回答