Buen reto para experto en Crystal Rep 8.5

Tengo un problema con un reporte en CR8.5 desde VB6. Resulta que ya lo tengo listo y el reporte muestra cierta información pasada por parámetros pero el detalle del mismo lo toma de una tabla en la Base de Datos. El problema es que cuando corro el reporte me da un error de server closed o algo así. Ahora bien, si elimino la parte de parámetros y lo corro solo tomando los datos de la BD, funciona bien, si por el contrario, desactivo la parte de tomar los datos de la BD y activo los parámetros también funciona bien pero si intento utilizar ambas cosas no funciona. ¿Alguna idea para solucionar este problema? Los parámetros los estoy pasando desde el form de VB donde esta el CRviewer. Si alguien tuviera algún ejemplo que funcione se los agradecería eternamente...
Saludos desde Costa Rica. Minor.
Respuesta
1
Esto es lo que yo utilizo:
Dim crSecs As CRAXDRT.Sections
Dim crSec As CRAXDRT.Section
Dim crRepObjs As CRAXDRT.ReportObjects
Dim RsReport1 As New ADODB.Recordset
Dim RsReport2 As New ADODB.Recordset
Dim RsReport3 As New ADODB.Recordset
Dim RsReport4 As New ADODB.Recordset
Dim rs1 As New ADODB.Recordset
Dim crpDatabase As CRAXDRT.Database
Dim crpTables As CRAXDRT.DatabaseTables Dim crpTable As CRAXDRT.DatabaseTable
Dim sentencia as String
sentencia = "tu sentencia SQL"
Set rs1 = cn.Execute(sentencia)
Screen.MousePointer = vbHourglass
Set crxReport = crxApplication.OpenReport(App.Path & "\Reporte.rpt")
crxReport.DiscardSavedData
Set crxDatabase = crxReport.Database
Set crxDatabaseTables = crxDatabase.Tables
crxReport.Database.SetDataSource rs1
crxReport.PrinterSetup Me.hWnd
CRViewer1.ReportSource = crxReport
CRViewer1.EnableExportButton = True
CRViewer1.DisplayGroupTree = False
CRViewer1.EnablePopupMenu = False
CRViewer1.EnableDrillDown = False
CRViewer1.EnableSelectExpertButton = False
CRViewer1.ViewReport
ReportViewerFrm.WindowState = vbMaximized
CRViewer1.Zoom 100
Screen.MousePointer = vbDefault
Private Sub Form_Resize()
With CRViewer1
.Top = 0
.Left = 0
.Width = Me.ScaleWidth
.Height = Me.ScaleHeight
End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas