Crystal Report - actualizar crystal report

 
Vista:

actualizar crystal report

Publicado por Javi (3 intervenciones) el 18/07/2005 18:00:51
Hola:
Cómo puedo actualizar un informe realizado con el crystal report en Visual Basic .NET en el momento que se lo muestro al cliente.
Lo que quiero actualizar son dos parámetros que no se muy bien como pasarselos al informe.
Por fórmulas o bien cargando objetos *.txt, no se muy bien las opciones que tengo y sobre todo no se como hacerlo, así que si algún alma caritativa quiere ayudarme le agradeceria que me mostrara un fragmento de código como ejemplo.
Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:actualizar crystal report

Publicado por Belén (37 intervenciones) el 19/07/2005 10:20:46
Para pasar párametros al crystal es de la siguiente manera...

Set crpParamDefs = crReport.ParameterFields

For Each crpParamdef In crpParamDefs
With crpParamdef

Select Case .ParameterFieldName
Case "FechaParte"
crpParamdef.AddCurrentValue (strDate & vbNullChar)
Case "FechaImpresion"
crpParamdef.AddCurrentValue (frmInformes.dtFechaImpresion.Value & vbNullChar)
Case "FechaInicial"
crpParamdef.AddCurrentValue (frmInformes.dtIntervaloInicial.Value)

Case "FechaFinal"
crpParamdef.AddCurrentValue (frmInformes.dtIntervaloFinal.Value)

Case "Param1"
If Right(streport, 14) = "Accidentes.rpt" Or Right(streport, 17) = "AccidentesCar.rpt" Then
crpParamdef.AddCurrentValue (frmInformes.MortalesCheck.Value & frmInformes.GravesCheck.Value _
& frmInformes.GravesCheck.Value & frmInformes.LevesCheck.Value _
& frmInformes.IlesosCheck.Value)
Else
crpParamdef.AddCurrentValue (Val(frmInformes.OrdenacionCombo.ListIndex + 1) & vbNullChar)
End If
Case "Param2"
crpParamdef.AddCurrentValue (frmInformes.AgrupaciónText.Text & vbNullChar)
Case "Capitulo"
If Right(streport, 26) = "MaterialesListadoFecha.rpt" Then
crpParamdef.AddCurrentValue (strCapitulos & vbNullChar)
Else
crpParamdef.AddCurrentValue (frmInformes.GrupoCombo.Text & vbNullChar)
End If
Case "Operacion"
If Right(streport, 16) = "OperacionCar.rpt" Or Right(streport, 24) = "OperacionDescripcion.rpt" _
Then
crpParamdef.AddCurrentValue (frmInformes.cmoOperaciones.ItemData(frmInformes.cmoOperaciones.ListIndex) & vbNullChar)
End If
Case "Grupo"
If Right(streport, 14) = "PersonalOp.rpt" Or Right(streport, 18) = "CategoriaGrupo.rpt" Or Right(streport, 19) = "MaquinariaGrupo.rpt" Then
crpParamdef.AddCurrentValue (frmInformes.GrupoCombo.ItemData(frmInformes.GrupoCombo.ListIndex))
End If
If Right(streport, 17) = "PersonalOpThr.rpt" Or _
Right(streport, 21) = "CategoriaGrupoThr.rpt" Or _
Right(streport, 22) = "MaquinariaGrupoThr.rpt" Then
crpParamdef.AddCurrentValue (frmInformes.GrupoCombo.ItemData(frmInformes.GrupoCombo.ListIndex))
End If

Case Else
Call infPanel.InformationOutput(vbCritical, _
"Error en informe. Nombre de parámetro desconocido")
Exit Sub
End Select
End With
Next

CrystalActiveXReportViewer1.ReportSource = crReport
CrystalActiveXReportViewer1.DisplayGroupTree = False
CrystalActiveXReportViewer1.ViewReport
Set crpParamDefs = Nothing
Set crpParamdef = Nothing
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:actualizar crystal report

Publicado por Javi (3 intervenciones) el 19/07/2005 17:44:07
gracias por enviar el código, pero he tenido algun problemilla.

He definidos las variables que usas en tu ejemplo como:

Dim crReport As New CrystalReport_Reunion() 'El report
Dim crpParamDefs As CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinitions
Dim crpParamdef As CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinition

Pero cuando intento:

crpParamdef.AddCurrentValue (strDate & vbNullChar)

me indica que no puede acceder a AddCurrentValue porque dice que es un procedimiento protected.

Me podrías decir en que me equivoco.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar