【问题标题】:rdlc REPORTPARAMETER INT , report doesn't appearrdlc REPORTPARAMETER INT ,报告不出现
【发布时间】:2016-08-24 02:37:56
【问题描述】:

我已经写了这个程序:

   alter proc rel_geralAC (@emite int, @mes char, @ano varchar(4) )as
   select Total_Mun = COUNT(xMunIni),xMunIni ,
   UF = MAX(UFIni) ,Valor_Total = SUM(CAST(vTPrest AS MONEY) ) 
   from CTRC where EMITENTE= @emite   and
   MONTH(emissaodata)=@mes and status = 'A' 
   and YEAR (EMISSAODATA)= CONVERT (int,@ano) 
   group by xMunIni order by UF,xMunIni 

这个过程返回一个不为空的表,我用它来创建一个数据集来填充 C# 中的 rdlc 报告 数据集返回信息

我已经在报表数据中声明了参数

这是reportviewer的代码:

 ReportParameter[] p = new ReportParameter[3];
     p[0] = new ReportParameter("emite",EEmit.ToString());
     p[1] = new ReportParameter("mes", emes.ToString());
     p[2] = new ReportParameter("ano", eano.ToString());
     reportViewer1.LocalReport.SetParameters(p);
     this.rel_geralACTableAdapter.Fill(this.ifdcontroladoria3DataSet.rel_geralAC,EEmit,emes,eano);
     this.reportViewer1.RefreshReport();

为什么报告没有显示任何内容?谢谢。


我已经删除了数据集并重新构建,创建了文本等3个参数,如果我选择整数,查询不起作用,报告参数只接受字符串,但参数可能是

文本、布尔值、日期/时间、整数、浮点数。

【问题讨论】:

  • 您是否在代码中的某处分配了数据集?

标签: c# rdlc


【解决方案1】:

//你少了一行:

reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p });

//既然你是把参数添加到参数数组中,你可以把参数数组放在 //set parameters 类中。

//我通常会这样做

ReportParameter rp = new ReportParameter("ParameterName", "yourtextvalue.text", false);

//repeat again (rp2, rp3, rp4 etc...)

//然后调用最后一条语句

reportViewer1.LocalReport.SetParameters(new ReportParameter[] { rp, rp2, rp3, rp4 });

【讨论】:

    【解决方案2】:

    您必须为定义所有参数添加“false”,例如:

    p[0] = new ReportParameter("emite",EEmit.ToString(),false);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      • 2014-08-17
      • 2019-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多