• Lunes 18 de Noviembre de 2024, 00:42

Autor Tema:  Actualización de Reportes dinámicos  (Leído 2362 veces)

Carlos_TheNumberOne

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Actualización de Reportes dinámicos
« en: Miércoles 6 de Agosto de 2008, 05:40 »
0
Uso VB6 y Crystal Reports XI ambos en castellano.

Hice un reporte que utiliza 5 bases de datos .DBF (OCDB) y funciona perfectamente (en forma aislada desde CR).
En el sistema en VB se elije una carpeta y en base al nuevo path de esta carpeta se debe emitir el reporte con los datos de las bases en esta carpeta. Obviamente cada carpeta tiene la colección de los 5 archivos DBF de igual estructura.

La cuestión es que el reporte no se actualiza y exhibe la misma información inicial con que fue diseñado.

No es problema de Report.DiscardSavedData porque está este código al inicio del form de impresion de CR.

Utilicé las funciones de reemplazo de bases de datos asi: (form1 es el form donde están los Control Data)
Report.Database.SetDataSource form1.Adodc1, ,1  'BASE1.DBF
Report.Database.SetDataSource form1.Adodc2, ,2  'BASE2.DBF
Report.Database.SetDataSource form1.Adodc3, ,3  'BASE3.DBF
Report.Database.SetDataSource form1.Adodc4, ,4  'BASE4.DBF
Report.Database.SetDataSource form1.Adodc5, ,5  'BASE5.DBF
y
CRViewer.DataSource = Report
CRViewer.ViewReport

Utilicé 5 control data en lugar de abrir 5 conexiones, porque cansado de no tener éxito con el reporte, por la mayor simplicidad de los control data le agregué algunos textbox asociados a cada control data ADODC para verificar que los datos de cada carpeta eran los correctos e incluso con los filtros necesarios. De modo que los datos de los control data que se envían al CR son los que deben ser impresos. Sin embargo el reporte no sale con los datos actualizados.

Incluso probé agregando el parámetro optativo '3' entre los dos datos de la línea de reemplazo de arriba, y nada!
Hice un programita herramienta para corroborar el orden de las tablas y no reemplazarlas mal en su número de orden con la función:
For x = 1 to Report.Database.Tables.Count
msgbox "Tabla Nº " + CStr(x) + Chr(10) + Report.Database.Tables.Name
Next

Hice la trampita de enviar algunos campos del Reporte desde un textbox del form principal y los toma perfectamente.

Estoy empantanado. Alguien ve algo mal ? Algo faltantante?
Gracias por adelantado a quienes puedan colborar

Carlos

tolotoco

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: Actualización de Reportes dinámicos
« Respuesta #1 en: Jueves 9 de Octubre de 2008, 08:24 »
0
Probablemente lo hayas tenido en cuenta pero, ¿ le has indicado que debe actualizarse cada vez que lo ejecutes ?.

Se le indica en las propiedades del report.

Un saludo