Ejemplo de imprimir PDF automatico
* este codigo lo tome del Sr. Victor Espina de su clase CFD para
PDFcreator
FUNCTION Pdfcreator
LPARAMETERS cReporte, cPathDigital, cPDFFile
* Nombre del informe, directorio, Archivo generado
LOCAL oPdf as Object
oPdf = CREATEOBJECT("PDFCreator.clsPDFCreator")
oPdf.cStart
oPdf.cVisible = .T.
oPdf.cclearCache
oPdf.cPrinterStop = .F.
oPdf.cOption("AutosaveDirectory") = ALLTRIM(cPathDigital)
oPdf.cOption("AutosaveFilename")= cPDFFile
oPdf.cOption("UseAutosave")= 1
oPdf.cOption("UseAutosaveDirectory") = 1
oPdf.cOption("AutosaveFormat") = 0
oPdf.cSaveOptions()
SET PRINTER TO NAME 'PDFCreator'
REPORT form (cReporte) TO PRINTER NOCONSOLE
opdf.cclearcache
oPdf.cClose
oPdf= null
ENDFUNC
* este codigo para Bullzip es de varios compañeros del foro de factura
electronica
FUNCTION PdfBullzip
LPARAMETERS cFrx,cArchivo
* cFrx Nombre del Informe, Archivo destino
loPdf = CREATEOBJECT('Bullzip.PDFPrinterSettings')
IF TYPE('loPdf')='O'
loPdf.SetValue('output', cArchivo)
loPdf.SetValue('DisableOptionDialog', 'no')
loPdf.SetValue('ConfirmOverwrite', 'no')
loPdf.SetValue('Showsettings', 'never')
loPdf.SetValue('ShowSaveAS', 'nofile')
loPdf.SetValue('ShowPdf', 'no')
loPdf.WriteSettings(.t.)
SET CONSOLE OFF
SET PRINTER TO NAME ("Bullzip PDF Printer")
REPORT FORM &cFrx TO PRINTER
SET PRINT OFF
SET PRINTER TO DEFAULT
SET CONSOLE ON
ENDIF
ENDFUNC
Para generar el reporte teniendo las funciones solo llamas asi
Pdfcreator("d:\frx\factura.frx","d:\cfd\","d:\cfd\facturaXXX.pdf")
PdfBullzip("d:\frx\factura.frx","d:\cfd\facturaXXX.pdf")
o
PdfBullzip(variableMiFormatoFrx,variableMiArchivoPDF)
* Nota si vas a usar variables estas las debes declarar previamente no
exite VariableMiFOrmatoFrx es un nombre X que puse para darte el
ejemplo.
Saludos
Antonio Meza