I am trying to pass a parameter to crystal report from my
vb windows application. The parameter is a time stamp.
Getting error:
Quote:
|
quote:Invalid index. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))
|
Line in error:
Code:
crParameterFieldLocation = crParameterFieldDefinitions.Item("StartDate")
Here is my code:
Code:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myCrystalReport1 As New ReportDocument
myCrystalReport1.Load(Application.StartupPath + "\CrystalReport1.rpt")
'Declare the parameter related objects.
Dim crParameterDiscreteValue As ParameterDiscreteValue
Dim crParameterFieldDefinitions As ParameterFieldDefinitions
Dim crParameterFieldLocation As ParameterFieldDefinition
Dim crParameterValues As ParameterValues
' Get the report's parameters collection.
crParameterFieldDefinitions = myCrystalReport1.DataDefinition.ParameterFields
' Set the first parameter
' - Get the parameter, tell it to use the current values vs default value.
' - Tell it the parameter contains 1 discrete value vs multiple values.
' - Set the parameter's value.
' - Add it and apply it.
' - Repeat these statements for each parameter.
crParameterFieldLocation = crParameterFieldDefinitions.Item("StartDate")
crParameterValues = crParameterFieldLocation.CurrentValues
crParameterDiscreteValue = New CrystalDecisions.Shared.ParameterDiscreteValue
Dim strStartdate As String = "2008-15-05 23:30:00 AM"
crParameterDiscreteValue.Value = strStartDate
crParameterValues.Add(crParameterDiscreteValue)
crParameterFieldLocation.ApplyCurrentValues(crParameterValues)
' Set the Crytal Report Viewer control's source to the report document.
CrystalReportViewer1.ReportSource = myCrystalReport1
End Sub