Convertir rpt a pdf VB6.0 Cristal Report 8.5

Necesito algo de ayuda por favor... Estoy desarrollando un sistema VB6 con Cristal Report 8.5 para cotización y necesito enviar el reporte que genera la cotización, como archivo adjunto de outlook al correo del cliente, quisiera hacerlo todo mediante código, me refiero que guarde el reporte como pdf y se envíe al correo del cliente sin necesidad de abrir el Outlook, para poder convertir el archivo a pdf pude ver que usan el PrintFileType pero no encuentro para pdf solo veo para word excel y otros más. Luego vi un código donde usan el .ExportOptions.PDFExportAllPages = True pero no se como aplicar esa propiedad en vb.
Si no fuera posible al menos que convierta el reporte a pdf y abra el outlook adjuntando el archivo pdf y que aparezca automáticamente el correo del cliente.
2

2 Respuestas

74.650 pts. Experto en Visual Basic 6
Encontré esto en la página de Crystal a ver si funciona :
Dim appl As New CRAXDRT.Application
Dim rep As CRAXDRT.Report
Private Sub Command1_Click()
      Set rep = appl.OpenReport("c:\mytest.rpt", 1)
      rep.ExportOptions.DiskFileName = "c:\pdf_report.pdf"
      rep.ExportOptions.DestinationType = crEDTDiskFile
      rep.ExportOptions.FormatType = crEFTPortableDocFormat
      rep.Export False
End Sub
* To export successfully to PDF, the exportmodeller.dll and crtslv.dll files must be present
Suerte !
Hola Experto, muchas gracias por el tiempo y también decirte que me funciono super ya me permite convertir mi reporte a pdf .. mil gracias.. ahora quiero hacerte una consulta más, sucede que al momento que llama al reporte me aparece la ventana del cristal report donde me pide los parámetros.. por favor si me podrías dar una idea de como pasarle estos parámetro por código ... para mostrar este reporte io trabaje de este modo
con este código llamo al reporte para mostrarlo y ahí le paso los parámetros al selec el listview.
With CrystalReport1
    g = lvLista.SelectedItem.Index   'aca selecciono el registro de la cotizacion del listview
    .ReportFileName = App.Path & "\Reportes\rptCotizacion.rpt"
    .ParameterFields(0) = "IGV;" & vigv & ";TRUE"     ----> paso parametro 1
    .ParameterFields(1) = "IdCot;" & lvLista.ListItems.Item(g) & ";TRUE"  ---> parametro 2
    .WindowMinButton = False
    .WindowShowRefreshBtn = False
    .WindowShowExportBtn = True
    .WindowShowPrintBtn = True
    .WindowShowPrintSetupBtn = True
    .WindowShowCloseBtn = True
    .WindowState = crptMaximized 'crptNormal
    .Action = 1
End With
y con este codigo estoy exportandolo y ahi nose como pasarle los parametros por codigo
      Set rep = appl.OpenReport(App.Path & "\Reportes\rptCotizacion.rpt", 1)
      rep.ExportOptions.DiskFileName = "c:\Cotizacion.pdf"
      rep.ExportOptions.DestinationType = crEDTDiskFile
      rep.ExportOptions.FormatType = crEFTPortableDocFormat
      rep.Export False
Agradezco mucho tu ayuda y tu tiempo.
Que pena con usted pero la verdad es que no le tengo respuesta a esta segunda pregunta, cuando vi su pregunta inicial busqué y encontré esa respuesta y se lqa envié para que la probara.
Creo que debe cerrar esta pregunta y colocar una nueva a ver que experto tiene la respuesta.
Suerte !

He probado ese código y no funciona, he registrado las dos dlls que mencionas pero no exporta a pdf aparece error indicando que no se encontró la base de datos física.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas