找回密码
 立即注册

QQ登录

只需一步,快速开始

jian.du
初级会员   /  发表于:2015-12-10 11:26  /   查看:3206  /  回复:1
我要实现的是,从aspx页面传递过来的参数,通过接收这个参数来动态给定数据源,也就是说带条件的数据源。
目前遇到的问题是:
使用官方博客中的例子只能实现一次性加载所有数据的动态数据源报表。

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






public partial class CDTransferRptForm : Page
    {
        /// <summary>
        /// 报销单id
        /// </summary>
        public  string 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("ayeeName");
            BxReimbursement rbs = new BxReimbursement(RbsId);
            dt.Rows.Add(rbs.No, rbs.ApplyUserName, rbs.PayeeName);
            return dt;
        }

1 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-12-10 15:39:00
沙发
回复 1楼jian.du的帖子

经过电话沟通,问题已经解决。本问题关闭
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部