Hola!!
Asi es como cargo con el CRViewer:
Código vb:
Ver originalPrivate Sub Form_Load()
Dim IDNombreServer As String, IDUsuario As String, IDPassword As String, IDBaseDatos As String
Dim Crystal As CRAXDRT.Application 'PARA CARGAR EL REPORTE DESDE ARCHIVO
Dim Reporte As CRAXDRT.Report 'CONTENEDOR DEL REPORTE
CRViewer.DisplayTabs = False
CRViewer.EnableDrillDown = False
CRViewer.EnableRefreshButton = False
Set Crystal = New CRAXDRT.Application
'ABRIR EL REPORTE
Set Reporte = Crystal.OpenReport(App.Path & "\Reporte.rpt")
Reporte.Database.Tables(1).SetLogOnInfo IDNombreServer, IDBaseDatos, IDUsuario, IDPassword
Reporte.DiscardSavedData
Reporte.RecordSelectionFormula = " "
DoEvents
Reporte.RecordSelectionFormula = strCondicion 'EL REPORTE DEBE TENER UN "SELECT *",
'POR LO QUE COLOCAMOS AQUI LOS FILTROS QUE DESEAMOS,
'EJ.: strCondicion = "{TABLA.ID_CAMPO} = " & txtID_CAMPO.TEXT
CRViewer.ReportSource = Reporte 'LINK DEL VIEWER AL REPORTE
CRViewer.ViewReport 'MOSTRAR REPORTE
Do While CRViewer.IsBusy
DoEvents
Loop
CRViewer.Zoom 100
Screen.MousePointer = vbDefault
Reporte.RecordSelectionFormula = Empty
End Sub
Private Sub Form_Resize()
CRViewer.Top = 0
CRViewer.Left = 0
CRViewer.Height = Me.Height
CRViewer.Width = Me.Width
End Sub
Nos cuentas!!