1

我有一个包含一个名为@playerID展望调用从VB.Net代码参数

参数SSRS报告SSRS报告

你能告诉我我需要添加这样的报告可以使用运行哪些编码参数?

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 

    Dim reportParameters() As Int16 = {10} 

    Me.ReportViewer1.ServerReport.SetParameters(reportParameters) 
End Sub 

当我运行报表,没有数据显示,除非我注释掉的代码的第2行,并使用RefreshReport这在这种情况下,它会提示我输入了10和工作参数。

回答

1

此代码将遍历一组参数并将其添加到报告查看器。您应该制作一个getParameterName(int)方法来获取rv的名称。

int[] parameters = new int[1]; 
parameters[0] = 10; 

//Create Parameter Collection Array 
Microsoft.Reporting.WebForms.ReportParameter[] reportParameterCollection = new  Microsoft.Reporting.WebForms.ReportParameter[parameters.Length]; 
//Loop through each parameter and load the name and value into the parameter collection 
int i = 0; 
foreach (int parameter in parameters) 
{ 
    reportParameterCollection[i] = new Microsoft.Reporting.WebForms.ReportParameter(); 
    reportParameterCollection[i].Name = getParameterName(i); 
    reportParameterCollection[i].Values.Add((parameters[i]); 
    i++; 
} 

//Load Parameters into the ReportViewer 
ReportViewer1.ServerReport.SetParameters(reportParameterCollection); 
ReportViewer1.ServerReport.Refresh(); 

更多的是C#的家伙自己的,但这里是我在vb.net手5秒:

Dim paramList As New Generic.List(Of ReportParameter) 

paramList.Add(New ReportParameter("Report_Parameter1","") 

Me.ReportViewer1.LocalReport.SetParameters(paramList) 
ReportViewer1.RefreshReport() 
+0

感谢您的答复。你有这个代码的VB.Net版本吗?我还使用报表查看器控件从WinForm中调用报表。 – 2012-04-11 18:13:55

+0

谢谢。我 paramList.Add(新ReportParameter( “PlayerID”,10)) Me.ReportViewer1.LocalReport.SetParameters(paramList) ReportViewer1.RefreshReport() 尝试过,但它剧照显示为空白报表。报告中是否有设置,我还必须更改? – 2012-04-11 18:35:12