2009-11-16 4 views
2

Я использую Visual Studie 2005 и SQL Server 2005. Я пытаюсь запустить некоторые отчеты ssrs, которые я создал на сервере. Могу ли я создавать параметры во время выполнения в моем коде, хотя я не создал параметры в отчете. Вот мой пример кода:динамически создавать параметр во время выполнения для ssrs

 ReportNum = Test.Left(cboReportList.Text, 9); 
     reportViewer1.ServerReport.ReportServerUrl = new Uri ("http://simsamwqs04.rsc.humad.com/reportserver"); 
     reportViewer1.ServerReport.ReportPath = "/Claims/Report Project1/" + ReportNum; 

     //ReportViewer1.ServerReport.ReportPath = "/Report Project State/Report1"; 
     ReportParameter[] Params = new ReportParameter[1]; 
     Params[0] = new ReportParameter("fundctr", txtCenter.Text); 
     reportViewer1.ServerReport.SetParameters(Params); 
     reportViewer1.ServerReport.Refresh(); 

ответ

0

Я не уверен, я понимаю ваш вопрос, но если я, кажется, что вы спрашиваете, если вы можете добавить параметры в отчет, в котором они не делали ранее существовать.

Если вы еще не создали параметры в отчете, то что вы ожидаете от параметров, если сможете создать их во время выполнения? У вас не было бы ничего в зависимости от них. У вас ничего не было бы в отчете, который бы их искал.

0

Возможно, вы попытаетесь создать все необходимые параметры и решить использовать их в SQL с оператором coalesce. Например:

select field1,field2 
from table_a 
where /*sneaky part below*/ 
field1 = Coalesce(@ParamForField1, field1) 
AND 
field2 = Coalesce(@ParamForField2, field2) 

Это эффективно игнорирует параметры, если их значение равно нулю. Однако в каждой ситуации это не работает. Это немного длинный цикл вокруг вашей проблемы, но может работать для вас.

Смежные вопросы