Parameter name is defined multiple time(SSRS/VB.net)
I am creating a report interface to SSRS to get the report parameters and pass it to the report viewer to display the report. The issue I am having is my code works fine as long as the parameter is not a "multivalue parameter". It will work with the muti value parameter as long as only one item is passed: e.g This example works Cust -text sdate-date enddate-date Fieldtodisplay-multivalue (Test) But if I try something like: this fails Cust -text sdate-date enddate-date Fieldtodisplay-multivalue (Test,test2) The error I get is : "a parameter with the name was defined multiple times" Looking through the forums I realise that a multivalue parameter has to be passed as a string array. But I don't know how to get the other parameters as well as the multivalue parameter and send it to the paramlist function to display the report. Can anyone help me with this? Private Sub btnRpt_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRpt.Click 'Table Dim table1 As Table = DirectCast(ph_Param.FindControl("Ctrls_Table"), Table) Dim temp As String Dim temp1 As String Dim temp3() = New String() {} Dim i As Integer = 0 Dim tbox As TextBox Dim radbox As Telerik.Web.UI.RadDatePicker Dim radDisplay As Telerik.Web.UI.RadComboBox Dim temp2 As String Dim x As Integer = 0 Dim irsc As ReportCredential = New ReportCredential("Rept", "funday","http://testrpt/reportserver") rptViewer.ServerReport.ReportServerCredentials = irsc rptViewer.ServerReport.ReportServerUrl = New System.Uri("http://testrpt/reportserver") rptViewer.ServerReport.ReportPath = Request.QueryString("ReportID") ' Dim pInfo As ReportParameterInfoCollection, Dim paramList As New Generic.List(Of Microsoft.Reporting.WebForms.ReportParameter) 'Dim param As New Microsoft.Reporting.WebForms.ReportParameter("pname", "pvalue", False) 'Creating table/getting parameter name and value Try For Each tr As TableRow In table1.Rows For Each tc As TableCell In tr.Cells For Each c As Control In tc.Controls temp = "" temp1 = "" If c.[GetType]() Is GetType(TextBox) Then tbox = DirectCast(c, TextBox) temp = tbox.ID temp1 = tbox.Text 'param.Name = tbox.ID 'param.Values.Add(tbox.Text) 'paramList.Add(param) ElseIf c.[GetType]() Is GetType(Telerik.Web.UI.RadDatePicker) Then radbox = DirectCast(c, Telerik.Web.UI.RadDatePicker) temp = radbox.ID temp1 = radbox.SelectedDate.Value 'param.Name = radbox.ID 'param.Values.Add(radbox.SelectedDate.Value) 'paramList.Add(param) ElseIf c.[GetType]() Is GetType(Telerik.Web.UI.RadComboBox) Then radDisplay = DirectCast(c, Telerik.Web.UI.RadComboBox) Try temp = radDisplay.ID 'param.Name = radDisplay.ID 'Dim chktext As Integer 'chktext = radDisplay.CheckedItems.Count 'Dim test1(chktext) As String For Each item In radDisplay.CheckedItems temp1 = item.Text temp1 = temp1 + ", " + temp2 temp1 = temp1 + temp2 Next 'For s = 0 To radDisplay.CheckedItems.Count - 1 ' test1(s) = radDisplay.CheckedItems.Item(s).Text 'Next temp1 = temp1.Remove(0, 1) 'param.Values.AddRange(test1) 'paramList.Add(param) Catch ex As Exception MsgBox(ex.Message) End Try End If If c.[GetType]() IsNot GetType(Label) And c.[GetType]() IsNot GetType(Telerik.Web.UI.RadComboBox) Then 'paramList.Add(param) paramList.Add(New Microsoft.Reporting.WebForms.ReportParameter(temp, temp1.Trim, False)) End If Next Next Next rptViewer.ProcessingMode = ProcessingMode.Remote rptViewer.ServerReport.SetParameters(paramList) rptViewer.ServerReport.Refresh() Catch ex As Exception MsgBox(ex.Message) End Try End Sub RJ
August 15th, 2012 2:17pm

Hi spydy2011, You are right that we need to define a string arry, put the multiple values in the arry, and pass the string arry to the parameter in the report. For the code snippet examples, please see the following threads with the same topic: Pass Multi value parameter to SSRS from UIreporting services, report viewer, multivalue parametersPassing a Multi-value parameter to the ReportViewer control Hope this helps. Regards, Mike Yin Mike Yin TechNet Community Support
Free Windows Admin Tool Kit Click here and download it now
August 25th, 2012 4:02am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics