Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problema Crystal report 11r2

Estas en el tema de Problema Crystal report 11r2 en el foro de Visual Basic clásico en Foros del Web. Estoy estableciendo la conección con VB6 de una plantilla hecha en Crystal Report 11r2 abre el archivo, lo que no entiendo es porque pasado unos ...
  #1 (permalink)  
Antiguo 24/05/2013, 17:07
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años
Puntos: 0
Problema Crystal report 11r2

Estoy estableciendo la conección con VB6 de una plantilla hecha en Crystal Report 11r2 abre el archivo, lo que no entiendo es porque pasado unos segundos se cierra el form automaticamente.

Sin hacer click en el boton para cargar el report adjunto el codigo

referencias1 -> Crystal Reports ActiveX Designer Design and Runtime Library 11.5
referencias2 -> Crystal ActiveX Report Viewer Library 11.5
componentes -> Crystal ActiveX Report Viewer Library 11.5

Version Cr11r2, VB6sp6
sistema: windows 7 32 bits

el Reporte se creo en CR11r2 usando RDO ODBC a un conector de MySQL con una consulta diseñada ahi.

el código en VB6 usado es:

Código vb:
Ver original
  1. Private Sub Command1_Click()
  2. Dim App1 As New CRAXDDRT.Application
  3. Dim report1 As New CRAXDDRT.Report
  4.  
  5.  
  6. Set report1 = App1.OpenReport("Report1.rpt")
  7.  
  8. CrystalActiveXReportViewer1.ReportSource = report1
  9. CrystalActiveXReportViewer1.ViewReport
  10. CrystalActiveXReportViewer1.Zoom 100
  11.  
  12.  
  13. End Sub


Me he dado cuenta de que al parecer es el activex, cuando paso el mouse en alguna de las opciones, se cierra..
Espero me puedan ayudar

Última edición por KenMasters; 24/05/2013 a las 17:47
  #2 (permalink)  
Antiguo 24/05/2013, 19:45
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años
Puntos: 0
Respuesta: Problema Crystal report 11r2

He intentado usando el Crystal Report 8.5 (previamente he quitado las anteriores referencias y complemento de la versión 11) y ocurren lo mismo, se cierra solo, al parecer según mi suposición se debe alguna compatibilidad con windows7.. alguna idea ???

Por cierto Visual Basic 6 sp6, se ejecuta con compatibilidad de windows XP sp3.

Creo que voy a tener que emular XP y probar ahi..

Aunque me queda la duda, porque me he conseguido un ejemplo usando SQL, una DB mdb, y se mantiene normal.. pero con el mysql no ocurre eso, a pesar de que el reporte es lo más simple posible...

Última edición por KenMasters; 24/05/2013 a las 20:05
  #3 (permalink)  
Antiguo 25/05/2013, 09:26
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años
Puntos: 0
Respuesta: Problema Crystal report 11r2

He estado buscando, limitando las referencias a las mismas usadas por el ejemplo, pero no encuentro la razón del porque se cierra. Considerando que las referencias son iguales, creo que lo único que cambia es el tipo de DB, adjunto ambos codigos


Codigo problema que se cierra el form pasado unos segundos o por pasar el puntero
Código vb:
Ver original
  1. Option Explicit
  2. Dim crxApp As New CRAXDRT.Application
  3. Dim crxRpt As CRAXDRT.Report
  4. Dim crParamDefs As CRAXDRT.ParameterFieldDefinitions
  5. Dim crParamDef As CRAXDRT.ParameterFieldDefinition
  6.  
  7. Dim cn As Connection
  8. Dim rsREP As Recordset ' se usa para el boton ver report
  9.  
  10. Private Sub Form_Load()
  11. Set cn = New Connection
  12. cn.ConnectionString = "DRIVER={MySQL ODBC 5.2 ANSI Driver}; SERVER=localhost;DATABASE=basedatos;USER=usuario;PASSWORD=pass;port:33006;OPTION=3"
  13. cn.CursorLocation = adUseClient
  14.  
  15. cn.Open
  16.  
  17. 'para el reporte
  18.  
  19. Set rsREP = New Recordset
  20.  
  21. MsgBox SQLquery
  22.  
  23. If SQLquery = "" Then
  24.     Unload Me
  25. Else
  26.     rsREP.Open "" & SQLquery & "", cn, adOpenDynamic, adLockOptimistic
  27. End If
  28.  
  29.  
  30. Set crxApp = New CRAXDRT.Application
  31. Set crxRpt = crxApp.OpenReport(AppPath() & "\Report2.rpt")
  32. crxRpt.EnableParameterPrompting = False
  33. Set crParamDefs = crxRpt.ParameterFields
  34.  
  35. For Each crParamDef In crParamDefs
  36.         Select Case crParamDef.ParameterFieldName
  37.             Case "nombre"
  38.                 crParamDef.SetCurrentValue rsREP.Fields("nombre")
  39.             Case "nacimiento"
  40.                 crParamDef.SetCurrentValue rsREP.Fields("nacimiento")
  41.         End Select
  42. Next
  43.  
  44. CRViewer1.ReportSource = crxRpt
  45. CRViewer1.ViewReport
  46. CRViewer1.Zoom (100)
  47. Show
  48. End Sub
Siendo SQLquery una variable publica tipo string que pasa la consulta al form donde esta el CRViewer1

Codigo de ejemplo que no se cierra
Código vb:
Ver original
  1. <Modulo1.bas>
  2. Option Explicit
  3. Global CN As New ADODB.Connection
  4.  
  5. Sub main()
  6. CN.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & App.Path & "\BD.accdb;Persist Security Info=False;"
  7. Form1.Show
  8.  
  9. End Sub
  10. <fin modulo1>
  11.  
  12.  
  13.  
  14.  
  15. Option Explicit
  16. Dim reporte As New Inventario
  17. Dim rs As New ADODB.Recordset
  18.  
  19. Private Sub cmdCommand1_Click()
  20. rs.Filter = ""
  21. repp
  22. End Sub
  23.  
  24. Private Sub Command1_Click()
  25. Dim rsss
  26. rsss = InputBox("Escriba una letra")
  27. rs.Filter = "nombre like '%" & rsss & "%'"
  28. repp
  29. End Sub
  30.  
  31. Private Sub Form_Load()
  32.  
  33. rs.Open "Select * from Inventario", CN, adOpenDynamic, adLockOptimistic
  34.  
  35. repp
  36.  
  37. End Sub
  38.  
  39. Sub repp()
  40.     With reporte
  41.         .Database.SetDataSource rs
  42.         .PaperOrientation = 1
  43.         .PaperSize = 45
  44.         .DiscardSavedData
  45.     End With
  46.  
  47.     CRViewer1.ReportSource = reporte
  48.     CRViewer1.ViewReport
  49.    
  50. End Sub

Etiquetas: crystal, form, mysql, report, vb6
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:19.