La Web del Programador: Comunidad de Programadores
 
    Pregunta:  3184 - "PROBLEMAS PARA REFRESCAR EL DATAREPORT EN VB 6.0"
Autor:  Gino Bustamante Díaz
Hola:

He generado varios reportes pero ninguno se ha podido refrescar inmediatamente despues de un ingreso de datos, he usado el datareport1.refresh y varias otras formas para refrescar la informacion del reporte, el refresco es solo cuando salgo del proyecto y vuelvo a ingresar la idea seria que una vez cerrado el datareport se refresca con la informacion nueva. solicito si alguien que sepa o le funcione el refresco me lo comente por favor.

  Respuesta:  Adolfo Enrique Diaz
Está el datareport conectada con un dataenvironment, agregas este código en el commando que abrirá el Datareport así:
Datareport1.Show
Datareport1.Refresh
DataEnvironment.rsMiConsulta.Close
DataEnvironment.rsMiConsulta.Open
Datareport1.Refresh
Este nunca me ha fallado!

  Respuesta:  Angel M. Palmero Bravo
Si entendí tu inquietud, es posible que no estes cerrando el objeto que hace referencia a la base de datos ó Recordset, luego de realizar la consulta y mostrar el informe.

Eso mismo me pasó a mi en un proyecto que hice, y gracias a la ayuda de un amigo (José Pastor, de Colombia), fue que resolví.

  Respuesta:  David Gonzalez
A mi me ha pasado, uso el datareport enlazado con un dataenvironment, el problema no era el datareport, el que no se refrescaba era el dataenvironment, lo corregi con unload dataenvironment y despues load dataenvironment.
espero les sirva, saludos

  Respuesta:  Jesus Arturo Plascencia vazquez
Hola yo tambien tenia ese problema con el data report y el codigo me ayudado a solucionarlo.

On Error Resume Next
DataEnvironment1.rsCommand1.Requery
DataReport1.Refresh
DataReport1.Show

Quisiera comentar que yo mando una variable como parametro para la consulta sql que realizo y lo unico que tuve que hacer es mandar dicha variable antes del codigo anterior, ejemplo:

DataEnvironment1.Commands(\"Command1\").Parameters(\"no_factura\").value = txtnofactura.Text

On Error Resume Next
DataEnvironment1.rsCommand1.Requery
DataReport1.Refresh
DataReport1.Show

Gracias
Atentamente
Jesus A. Plascencia

  Respuesta:  Claudio Andre
Esto te puede ayudar, a mi me ha funcionado perfectamente

Private Sub mnuBincMovimientos_Click() ' aqui llamo al datareport
On Error Resume Next
dataenvironment1.rscommand1.Requery
datareport1.Refresh
datareport1.Show
End Sub

  Respuesta:  Oscar Cabrera
Hola...
Espero que ter ayude mi respuesta.

Para poder refrescar el DataReport, debes mandar un requery a la consulta, es decir si el reporte se basa en una consulta hecha por ejemplo en access llamada "ventas" y utilizastes el dataenvironment, para la conexion con la base de datos, debes hacer lo siguiente:

dataenvironment1.ventas.requery, pero primero debes abrir la consulta, y al realizar la linea cedrrar la consulta(open, close)

de todas maneras debes realizar el metodo requery, sea como utilizaste la consulta, con dataenvironment u otro.

Cualquier pregunta me pouede escribir.

Ojala que te sirva.

  Respuesta:  Luis Alberto
Hola:

Lo que debes hacer para refrescar lo reportes cada vez que son enviados a la impresora es:

Cerrar la tabla con codigo y luego en el boton de Command cuando vuelves a emitir el reporte
debes abrirlo. es muy fácil.
Cualquier cosa comunicate conmigo.

Chau