jian.du 发表于 2015-12-10 11:27:00

ar For asp.net 动态带参数的数据源报表

我要实现的是,从aspx页面传递过来的参数,通过接收这个参数来动态给定数据源,也就是说带条件的数据源。
目前遇到的问题是:
使用官方博客中的例子只能实现一次性加载所有数据的动态数据源报表。

以下就是我的viewPage的后台代码,每次运行都获取不到 Request中的参数,麻烦咨询下这种需要传参给定数据源的示例哪里有,或者该如何给数据源传参。






public partial class CDTransferRptForm : Page
    {
      /// <summary>
      /// 报销单id
      /// </summary>
      publicstring RbsId {
            get { return Request.Params["rbsId"] ?? ""; }
      }

      protected void Page_Load(object sender, EventArgs e)
      {
            if(!IsPostBack){
                GrapeCity.ActiveReports.PageReport rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(Server.MapPath("~/Report/ReportMb/CDTransferRpt.rdlx")));
                rpt.Document.LocateDataSource += new GrapeCity.ActiveReports.LocateDataSourceEventHandler(Document_LocateDataSource);

                WebViewer1.Report = rpt;
            
            }
            
      }

      void Document_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
      {
            if (args.DataSourceName == "DataSource1")
            {
                if (args.DataSetName == "DataSet1")
                {
                  args.Data = GetRbsMan();
                }
            }
      }

      
      private DataTable GetRbsMan()
      {
            DataTable dt = new DataTable();
            dt.Columns.Add("No");
            dt.Columns.Add("ApplyUserName");
            dt.Columns.Add("PayeeName");
            BxReimbursement rbs = new BxReimbursement(RbsId);
            dt.Rows.Add(rbs.No, rbs.ApplyUserName, rbs.PayeeName);
            return dt;
      }

iceman 发表于 2015-12-10 15:39:00

回复 1楼jian.du的帖子

经过电话沟通,问题已经解决。本问题关闭
页: [1]
查看完整版本: ar For asp.net 动态带参数的数据源报表