0

microsoftreportviewerを使用しているWindowsフォームがあり、1つのデータセットでこれを正常に実行できます。テーブルtable1、table2、およびtable3があるとすると、ReportViewer_Loadでプログラムでこれらすべてをreportviewerに追加するにはどうすればよいですか?ありがとう!

注:これらのテーブルにはすべて異なる列があります

4

1 に答える 1

0

一度に名前で1つを選択し、それをバインドしてレポートしますか?それがあなたが探しているものであるなら、以下のコードはあなたを助けるかもしれません:

private DataTable GetData(string tableName)
    {
        DataSet ds = new DataSet();
        string query = "Select * from something";
        OdbcDataAdapter da = new OdbcDataAdapter(query, conn);
        da.Fill(ds);
        DataTable dt = ds.Tables[tableName];
        return dt;
    }
//You can fill the dataset once and then just get the table by table name. No necessary that you have to fill the dataset every time to get tables 

    private void RunReportViewer()
    {
        this.ReportViewer1.Reset();
        this.ReportViewer1.LocalReport.ReportPath = Server.MapPath("Report.rdlc");
        ReportDataSource rds = new ReportDataSource("#_your_table_Name", GetData());
        this.ReportViewer1.LocalReport.DataSources.Clear();
        this.ReportViewer1.LocalReport.DataSources.Add(rds);
        this.ReportViewer1.DataBind();
        this.ReportViewer1.LocalReport.Refresh();
    }
于 2012-05-10T13:54:28.363 に答える