2013-03-20 5 views
0

Я написал эту процедуру:RDLC REPORTPARAMETER INT, отчет не отображается

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)[email protected] and status = 'A' 
    and YEAR (EMISSAODATA)= CONVERT (int,@ano) 
    group by xMunIni order by UF,xMunIni 

Эта процедура возвращает таблицу не пустой, я использую его, чтобы создать набор данных для заполнения отчета RDLC в C# набора данных возвращаю информацию enter image description here

Я объявил параметры в данном отчете

enter image description here

и это код 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 параметров, таких как текст, если я выбираю целое число, запрос не работает, параметр отчета принимает только строки, но эти параметры могут быть

текст, boolen, дата/время, целое число, с плавающей точкой.

+0

вы назначая набор данных где-то в коде? –

ответ

0

Вы должны добавить «ложь» для определения всех параметров, например:

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

// Вы пропускаете строку:

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

// Так как вы добавляете свои параметры массив параметров, вы можете поместить массив параметров в // заданный класс параметров.

// Я обычно делаю

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

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

// Затем вызовите последнее утверждение

reportViewer1.LocalReport.SetParameters(new ReportParameter[] { rp, rp2, rp3, rp4 }); 
Смежные вопросы