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

Crystal Reports

Estas en el tema de Crystal Reports en el foro de Visual Basic clásico en Foros del Web. Hola de nuevo. Ya solo me falta "imprimir" para terminar mi proyecto. Cuando le doy a imprimir, sale un formulario con 2 botones: imprimir seleccion ...
  #1 (permalink)  
Antiguo 27/07/2011, 03:15
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Crystal Reports

Hola de nuevo. Ya solo me falta "imprimir" para terminar mi proyecto. Cuando le doy a imprimir, sale un formulario con 2 botones: imprimir seleccion e imprimir informe.
El informe lo tengo hecho. Imprime una lista con los datos mas importantes. Lo que no se hacer es por seleccion, ya que tendria que ir "registro" por "registro" antes de darle a imprimir. Quizas poniendole un checkbox a listview y que luego se enlazara con crystal reports podria pero estamos en las mismas!!
Me gustaria que me lo explicaseis, no que me dierais el codigo entero.
Muchas gracias.
Un saludos
  #2 (permalink)  
Antiguo 27/07/2011, 10:10
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Busqueda Respuesta: Crystal Reports

Un pequeño ejemplo de cómo lo hago yo:

Código:
    
    Dim formula As String
    Screen.MousePointer = vbHourglass
    Set Report = Application1.OpenReport(App.Path & "\presupuesto.rpt", 1)
For Each tbl In Report.Database.Tables
   tbl.SetLogOnInfo NombreBaseDatos
Next
    formula = "{presupuestos.numpresupuesto}='" & numero & "'"
    Report.RecordSelectionFormula = formula
    CRViewer1.ReportSource = Report
    CRViewer1.ViewReport
    CRViewer1.Zoom 1
    Screen.MousePointer = vbDefault
 
Con esto lo que hago es abrir un formulario de Crystal llamado presupuesto.rpt que está en la misma ruta que la aplicación y luego filtro con el la variable formula por el número de presupuesto.

Por supuesto hay que tener un CRViewer metido en el formulario de VB. Yo hago un formulario genérico y según de dónde venga la llamada a este formulario pues llamo a unos ficheros de crystal o a otros.
Yo utilizo Crystal Reports XI.

Espero que te haya valido de algo.
  #3 (permalink)  
Antiguo 27/07/2011, 12:25
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Crystal Reports

Cita:
Iniciado por petis Ver Mensaje
Un pequeño ejemplo de cómo lo hago yo:

Código:
    
    Dim formula As String
    Screen.MousePointer = vbHourglass
    Set Report = Application1.OpenReport(App.Path & "\presupuesto.rpt", 1)
For Each tbl In Report.Database.Tables
   tbl.SetLogOnInfo NombreBaseDatos
Next
    formula = "{presupuestos.numpresupuesto}='" & numero & "'"
    Report.RecordSelectionFormula = formula
    CRViewer1.ReportSource = Report
    CRViewer1.ViewReport
    CRViewer1.Zoom 1
    Screen.MousePointer = vbDefault
 
Con esto lo que hago es abrir un formulario de Crystal llamado presupuesto.rpt que está en la misma ruta que la aplicación y luego filtro con el la variable formula por el número de presupuesto.

Por supuesto hay que tener un CRViewer metido en el formulario de VB. Yo hago un formulario genérico y según de dónde venga la llamada a este formulario pues llamo a unos ficheros de crystal o a otros.
Yo utilizo Crystal Reports XI.

Espero que te haya valido de algo.
Muchas gracias por tu respuesta. Tengo varias preguntas: Yo tengo un boton en imprimir llamado "imprimir selecion". Cuando lo pulso llama a un formulario "Form1" que se creo automaticamete al agregar el reporte de crystal report xi en vb6. Mi pregunta es: ¿Es hay donde devo colocar el codigo? ¿Me puedes explicar esta linea formula = "{presupuestos.numpresupuesto}='" & numero & "'"? No entiendo esa linea, lo demas si.
Muchas gracias de nuevo.
Un Saludo.
  #4 (permalink)  
Antiguo 28/07/2011, 04:21
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Crystal Reports

Cita:
Iniciado por juplagon Ver Mensaje
Muchas gracias por tu respuesta. Tengo varias preguntas: Yo tengo un boton en imprimir llamado "imprimir selecion". Cuando lo pulso llama a un formulario "Form1" que se creo automaticamete al agregar el reporte de crystal report xi en vb6. Mi pregunta es: ¿Es hay donde devo colocar el codigo? ¿Me puedes explicar esta linea formula = "{presupuestos.numpresupuesto}='" & numero & "'"? No entiendo esa linea, lo demas si.
Muchas gracias de nuevo.
Un Saludo.
Entiendo que ese "Form1" que tú dices es un formulario de VB6 en el que se incluye un CRViewer. Sería ahí donde tienes que colocar el codigo.
En cuanto a la línea que comentas tiene que ver con la base de datos (presupuestos es una tabla y numpresupuesto es un campo de dicha tabla, y numero es el número de presupuesto que queremos imprmir. Va entrecomillado porque el número de presupuesto lleva letras también).
A ver si te he aclarado algo más.
  #5 (permalink)  
Antiguo 30/07/2011, 02:12
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Crystal Reports

Hola. Muchas gracias por todo. Al ejecutar el programa me salta el error 424 en tiempo de ejecucion. Dice que se requiere un objeto. El error esta en esta linea: Set Report = Application1.OpenReport(App.Path & "\imprimir.rpt", 1)
¿Application1 es un formulario? Si es asi, cual tendria que poner: el que tiene el listview o el que tiene el boton de imprimir :S?

Muchas gracias de nuevo
Un saludo.
  #6 (permalink)  
Antiguo 31/07/2011, 08:20
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Crystal Reports

Me da error al dale a imprimir lista:

Logon failed:
Details: [Database vendor code: -1023]

Ahora que me faltaba lo de imprimir seleccion salta tambien el de imprimir lista!!
  #7 (permalink)  
Antiguo 01/08/2011, 05:33
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Crystal Reports

¿Alguna idea para cerrar ya el tema?
  #8 (permalink)  
Antiguo 15/08/2011, 03:56
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Crystal Reports

Cita:
Iniciado por juplagon Ver Mensaje
¿Alguna idea para cerrar ya el tema?
Lo siento, he estado de vacaciones. Mañana lo miro y te digo algo.
  #9 (permalink)  
Antiguo 18/08/2011, 02:42
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Crystal Reports

Estas tres variables yo las tengo como Global porque las utilizo en varios formularios:

Código:
Global Application1 As New CRAXDRT.Application
Global Report As New CRAXDRT.Report
Global tbl As CRAXDRT.DatabaseTable

Última edición por petis; 18/08/2011 a las 07:21
  #10 (permalink)  
Antiguo 10/09/2011, 03:49
 
Fecha de Ingreso: marzo-2011
Mensajes: 21
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Crystal Reports

Muchas gracias. Perdona por no responder antes. Tema cerrado ;)
  #11 (permalink)  
Antiguo 14/09/2011, 13:20
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Crystal Reports

Cita:
Iniciado por juplagon Ver Mensaje
Muchas gracias. Perdona por no responder antes. Tema cerrado ;)
¿Y te ha valido de algo?. Si tienes más dudas o quieres que te mande un ejemplo me lo dices.
  #12 (permalink)  
Antiguo 29/09/2012, 18:21
 
Fecha de Ingreso: febrero-2008
Mensajes: 2
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Crystal Reports

Saludos petis, me puedes enviar un ejemplo completa esta es mi direccionde correo [email protected].... sabria agradecertelo
  #13 (permalink)  
Antiguo 08/10/2012, 05:36
Avatar de petis  
Fecha de Ingreso: septiembre-2010
Mensajes: 20
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: Crystal Reports

Cita:
Iniciado por hmoran0509 Ver Mensaje
Saludos petis, me puedes enviar un ejemplo completa esta es mi direccionde correo [email protected].... sabria agradecertelo
Te lo acabo de mandar por email.

Etiquetas: crystal, reports
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 15:58.