首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

rdlc 报表Refresh()不能刷新数据解决方案

2012-02-01 
rdlc 报表Refresh()不能刷新数据protected void ShowReport(string strYear1,string strYear2,string strM

rdlc 报表Refresh()不能刷新数据
protected void ShowReport(string strYear1,string strYear2,string strMonth)
  {
  this.ReportViewer1.Reset();
  ReportViewer1.Visible = true;
  ReportViewer1.LocalReport.DataSources.Clear(); 
  string LAST_YEAR = strYear1;
  string NOW_YEAR = strYear2;
  string MONTH = strMonth;
  string procedureName = "";
  procedureName = "Report12_Year"; 
  DBAdapter adapter = new DBAdapter();
  ArrayList parms = new ArrayList(3);
  parms.Add(new SqlParameter("@LAST_YEAR", SqlDbType.VarChar,4));
  parms.Add(new SqlParameter("@NOW_YEAR", SqlDbType.VarChar, 4));
  parms.Add(new SqlParameter("@MONTH", SqlDbType.VarChar,4));
  ((SqlParameter)parms[0]).Value = LAST_YEAR;
  ((SqlParameter)parms[1]).Value = NOW_YEAR;
  ((SqlParameter)parms[2]).Value = MONTH;
  DataTable dataTable = adapter.
  ExecuteQueryReturnDataTable(procedureName, parms, false);  
  ReportViewer1.LocalReport.ReportPath = "ArtyWebPage/Reports/Report12_Year.rdlc";
  ReportViewer1.LocalReport.DataSources.Clear();
  ReportViewer1.LocalReport.DataSources.
  Add(new ReportDataSource("DataSetAll_Report12_Year", dataTable));
  ReportViewer1.LocalReport.Refresh();

  }
  protected void btnSeach_Click(object sender, EventArgs e)
  {
  ShowReport(ddlNf1.SelectedValue,ddlNf2.SelectedValue,ddlYf.SelectedValue);
  }

[解决办法]

C# code
protected void ShowReport(string strYear1, string strYear2, string strMonth){    this.ReportViewer1.Reset();    ReportViewer1.Visible = true;    ReportViewer1.LocalReport.DataSources.Clear();    string LAST_YEAR = strYear1;    string NOW_YEAR = strYear2;    string MONTH = strMonth;    string procedureName = "";    procedureName = "Report12_Year";    DBAdapter adapter = new DBAdapter();    ArrayList parms = new ArrayList(3);    parms.Add(new SqlParameter("@LAST_YEAR", SqlDbType.VarChar, 4));    parms.Add(new SqlParameter("@NOW_YEAR", SqlDbType.VarChar, 4));    parms.Add(new SqlParameter("@MONTH", SqlDbType.VarChar, 4));    ((SqlParameter)parms[0]).Value = LAST_YEAR;    ((SqlParameter)parms[1]).Value = NOW_YEAR;    ((SqlParameter)parms[2]).Value = MONTH;    DataTable dataTable = adapter.    ExecuteQueryReturnDataTable(procedureName, parms, false);    ReportViewer1.LocalReport.ReportPath = "ArtyWebPage/Reports/Report12_Year.rdlc";    ReportViewer1.LocalReport.DataSources.Clear();    ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSetAll_Report12_Year", dataTable));    ReportViewer1.LocalReport.Refresh();} 

热点排行