admin 发表于 2018-7-25 14:48:12

如何后台给报表参数赋值 和 如何后台获取报表参数


在进行报表设计的时候有时需要通过后台代码端给参数赋值,有时也需要通过后台获取报表参数的值,然后进行动态数据的筛选。下面我们首先来说说如何后台给参数赋值:1、       首先新建一张RDL报表,然后添加参数:添加两个参数:      参数1:CategoryID                           参数2:CategoryName
2、       后台代码端给报表参数赋值:GrapeCity.ActiveReports.PageReportrpt = new GrapeCity.ActiveReports.PageReport(newSystem.IO.FileInfo(@"**.rdlx"));rpt.Report.ReportParameters.DefaultValue.Values.Add("1"); ReportParameters代表第一个参数 CategoryIDReportParameters代表第二个参数 CategoryName 这样就直接把后台参数传递给报表了。如何在后台获取参数的值。1、首先给报表添加参数添加两个参数:      参数1:CategoryID                        参数2:CategoryName
            2、       后台获取传递的参数进行参数的筛选。这个主要是进行动态数据源绑定,并且用到了报表钻取功能的时候,经常需要后台主表传递的筛选参数,进行数据的筛选。该操作的注意点: A、      首先主表进行导航的时候,主表传递给子表的参数需要和子表的参数命名一致。

B、       子表的参数设置,命名需要跟主表传递的值得命名一致,这样才能进行信息一致的匹配。3、       后台参数的获取报表的参数后台的获取需要在 LocateDataSourceEventArgs 这个函数下才可以获取报表参数的当前值。这一点必须谨记 后台获取参数的关键代码:args.Report.Parameters.CurrentValue.ToString(); Parameters代表参数一Parameters代表参数二4、具体代码: private void locatedate(object sender,GrapeCity.ActiveReports.LocateDataSourceEventArgs args)      {            if (args.DataSourceName == "DataSource1")            {                if (args.DataSetName == "DataSet1")                {         string a = args.Report.Parameters.CurrentValue.ToString();                  args.Data = returndata();                }                           }      }

lywb 发表于 2019-1-15 20:42:40

GrapeCity.ActiveReports.PageReport rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(@"Report\CJSGS\饮用水日常检验报告.rdlx"));
                  rpt.Report.ReportParameters.DefaultValue.Values.Add(strKey);
                  WebViewer1.Report = rpt;
这样写不行呀,

lywb 发表于 2019-1-15 20:42:58


提示没有报表

KearneyKang 发表于 2019-1-16 09:15:36

试试用这句代码:   GrapeCity.ActiveReports.PageReport rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(Server.MapPath(@"Reports/RdlReport1.rdlx")));

AR16_Learning 发表于 2023-8-4 16:30:45

string a = args.Report.Parameters.CurrentValue.ToString();
args没有相应的属性,该如何获取报表的参数值啊?

Bella.Yuan 发表于 2023-8-4 17:32:19

AR16_Learning 发表于 2023-8-4 16:30
string a = args.Report.Parameters.CurrentValue.ToString();
args没有相应的属性,该如何获取报表的 ...

您好,微信已和您远程进行查看,参考下图进行解决。

页: [1]
查看完整版本: 如何后台给报表参数赋值 和 如何后台获取报表参数