Inicio > Visual Basic > rodolfo1245 > Actualizar datos en Crystal Report

Actualizar datos en Crystal Report

Experto:
Usuario:
Fecha: 24/01/2005
Valoración: (4,00 sobre 5) Categoría: Visual Basic
18/01/2005
jmcalata, usuario preguntando en Visual Basic
Usuario
Hola amigo, tengo un problemilla con un programa que estoy desarrollando con Visual Basic 6. Resulta que tengo una base de datos de Access 2000 y un informe creado con Crystal Report 4.6.1. El problema es que no me actualiza los datos en el informe, en la base de datos los datos estan actualizados pero en el informe no.

¿Como puedo hacer que se actualizen los datos cada vez que llamo al informe de crystal desde visual?

Gracias y espero tu respuesta.
19/01/2005
jmcalata, experto respondiendo en Visual Basic
Experto
prueba agregando esta instruccion desde vb
CrystalReport1.DiscardSavedData = True
19/01/2005
jmcalata, usuario preguntando en Visual Basic
Usuario
Hola, he puesto
crystalreport1.DiscardSavedData =true

si pongo despues crystalreport1.action = 1 para abrir el informe me da un error en esta última línea que dice:

ERROR: 20536 Imposible Conectar: registro de parámetros incorrecto.

Yo abría el informe con la función:
crystalreport1.printreport pero despues de la orden DiscardSavedData no hace nada. No me hable el informe.

Espero tu respuesta y gracias por la ayuda.
19/01/2005
jmcalata, experto respondiendo en Visual Basic
Experto
Como imagino que ya sabras que hay dos formas de mostrar reportes en de CR en VB (archivos externos rpt y codigo incrustado dsr) te explicare los dos:

Reportes Externos rpt (DiscardSavedData)

Private Sub cmdAceptar_Click()
CrystalReport1.DiscardSavedData = True
CrystalReport1.LogonInfo(0) = "DSN = " + ga_ServidorSQL + ";UID = " + IDSAG + ";PWD = " + PWD + ";DSQ = " + BD
rptLibroDiario.Action = 1
End Sub
Recuerda poner LogonInfo(indice) tantas tablas tengas en tu reporte...(puedes crear una funcion)

Reportes Internos dsr (DiscardSavedData) (este codigo lo pones en la forma donde esta el viewer)

' crea una variable de tipo tabla
Dim tabla As CRAXDRT.DatabaseTable
' Logeate a las tablas del reporte
For Each tabla In Report.Database.Tables
tabla.SetLogOnInfo ga_ServidorSQL, BD, ID, PWD
Next
Listo

Otra forma es en las opciones del reporte, busca donde dice "Save Date With Report" y desactivalo


PD:(Prueba lo anterior pero yo trabajo con codigo incrustado es decir hacer los reportes desde visual asi no da ningun tipo de problema)
24/01/2005
jmcalata, usuario preguntando en Visual Basic
Usuario
Muy Bien. Me ha sido de gran utilidad
Enlaces patrocinados