Para asignar el resultado de un recordet a un reporte de crystal yo hago asi:
rsPrincipal.Open "SELECT * FROM CLIENTES WHERE IDCLIENTE='103'", mConexion, adOpenStatic, adLockReadOnly, adCmdText
vReporte.Database.SetDataSource rsPrincipal, , 1
crVisorReporte.ReportSource = vReporte
crVisorReporte.Zoom 100
crVisorReporte.ViewReport
saludos.