Usuario
Parametros en Crystal reports

Pregunta
-
Hola a todos tengo un problema.
Tengo un formulario en el cual tengo un textbox, un boton y un CrystalReport en el cual visualizo un reporte previamente hecho al reporte le cree un parametro para bucar un determinado objeto cuando lo ejecuto me muestra una ventana donde mepide el parametro de busqueda todo esta bien hasta hay. Pero lo que quiero es que segun lo que el usuario escriba en el textbox y al oprimir el boton se muestre el reporte segun este parametro. Utilizo el siguiente codigo:
Dim ParamFields As ParameterFields = Me.CrystalReportViewer1.ParameterFieldInfo
Dim p_EmpID As New ParameterField
p_EmpID.Name = "objeto"
Dim p_EmpID_Value As New ParameterDiscreteValue
p_EmpID_Value.Value = Me.txtobjeto.Text
p_EmpID.CurrentValues.Add(p_EmpID_Value)
ParamFields.Add(p_EmpID)
Pero cuando lo ejecuto y escribo un objeto en mi textbox y pulso el boton me sigue saliendo la misma ventana de parametros y no toma el valor escrito. Como puedo solucionar esto, que tengo mal en el codigo, como hago para que no se muestre la ventana. Por favor ayudenme no se como solucionar este inconveniente- Cambiado Enrique M. Montejo viernes, 20 de mayo de 2011 10:33 crystal reports (De:Lenguaje VB.NET)
Todas las respuestas
-
hola,
no se si has visto este link, explica como pasarle correctamente parametros a Crystal:
Working with Parameters with Crystal Reports and ASP.NET 2.0
Espero te sea de utilidad
Saludps
Leandro Tuttini -
-
Creo que deberías hacer lo siguiente:
Private Parametro_Nombre as String
Private
Sub OKButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OkButton.Click
'Se necesita un arreglo para la lista de valores de los parámetros
'que puede ser uno o varios
Dim myArrayList As ArrayList = New ArrayList()
myArrayList.Add(Me.txtobjeto.Text)
Parametro_Nombre = "objeto"
'Aquí va el nombre de tu reporte y el arreglo de valores, que en tu caso es solo uno
SetCurrentValuesForParameterField(TuReporte, myArrayList)
End Sub
Private
Sub SetCurrentValuesForParameterField(ByVal myReportDocument As ReportDocument, ByVal myArrayList As ArrayList)
Dim currentParameterValues As ParameterValues = New ParameterValues()
For Each submittedValue As Object In myArrayList
Dim myParameterDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
myParameterDiscreteValue.Value = submittedValue.ToString()
currentParameterValues.Add(myParameterDiscreteValue)
Next
Dim myParameterFieldDefinitions As ParameterFieldDefinitions = myReportDocument.DataDefinition.ParameterFields
Dim myParameterFieldDefinition As ParameterFieldDefinition = myParameterFieldDefinitions(PARAMETER_FIELD_NAME)myParameterFieldDefinition.ApplyCurrentValues(currentParameterValues)
End Sub
Buena Suerte!