//设置为本地报表
// this.ReportViewer1.ProcessingMode = ProcessingMode.Local;(可选)
//指定报表路径
ReportViewer1.LocalReport.ReportPath = MapPath("Report1.rdlc");
// ReportViewer1.LocalReport.DataSources.Clear();(可选)
DataSet ds= Getdata();
//设置数据源
ReportDataSource rds = new ReportDataSource("DataSet1_Shop",
ds.Tables[0]);
ReportViewer1.LocalReport.DataSources.Add(rds);
ReportViewer1.LocalReport.Refresh();
事实上,报表显示格式是固定的。那也就是说报表原来的数据源可以不作大的改
动,理论上直接修改查询就可以了。
//修改数据源
SqlDataSource1.SelectCommand = "SELECT KY_JC.JCID, KY_JC.CGLB,
KY_JC.CGMC, KY_JC.CBSMC, KY_JC.CBH, KY_JC.CBRQ, KY_JC.JB, KY_JCZB.XM,
KY_JCZB.BM, KY_JCZB.CDZS, KY_JCZB.FZ FROM KY_JC INNER JOIN KY_JCZB ON
KY_JC.JCID = KY_JCZB.JCID where BM=" + "'"+Session["bm"]+"'";
//重新绑定
ReportViewer1.DataBind();
//刷新报表
ReportViewer1.LocalReport.Refresh();
这里需要注意的是,如果把清楚报表数据源的代码加上就会出错,因为没有添加
新的数据源,所以不需要清除,直接重新绑定即可。