Usar Pdfcreator para imprimir XML

Usar Pdfcreator para imprimir XML

Postby Alin » Sun Mar 17, 2013 1:04 am

Hola,

Tengo la necesidad de imprimir en batch archivos xml que se encuentran en determinado folder, estoy tratando de hacerlo con pdfcreator, ya que con bullzip no tuve suerte, estoy usando el código de abajo para lograr el objetivo pero me esta marcando error:

Print timeout
Error BASE/1004 No exported method: CSTART


o también este error si utilizo la opción oPDFC:cVisible := .t.

Print timeout
Error BASE/1005 No exported variable: CVISIBLE


Code: Select all  Expand view
procedure imprimirArchivoXML( cfileName )
 local nEvent := 0
 local nTime

   oPDFC:cVisible := .t.
   If oPDFC:cStart("/NoProcessingAtStartup") = .f.
      If oPDFC:cStart("/NoProcessingAtStartup", .t.) = .f.
         wait "Init printer error!"
         return nil
       EndIf
   EndIf
 
   oPDFC:_cOption('UseAutosave',1)
   oPDFC:_cOption('UseAutosaveDirectory',1)
   oPDFC:_cOption("AutosaveFormat",0)
   DefaultPrinterBak := oPDFC:cDefaultprinter
   oPDFC:cDefaultprinter := "PDFCreator"
   oPDFC:cClearCache()
   oPDFC:_cOption('AutosaveFilename',"test")
   oPDFC:_cOption('AutosaveDirectory', "c:\temporal")

   oPDFC:cSaveOptions()

// print something
//oPdfC:cPrintPDFCreatorTestpage()
   oPdfC:cPrintFile( cfileName )

   oPdfC:cPrinterStop := .F.

   nTime := hb_MilliSeconds()
   do while nEvent == 0 .AND. hb_MilliSeconds() - nTime < 10000
      hb_idleSleep( 0.5 )
      /* The following dummy line is required to allow COM server to send event [Mindaugas] */
      oPdfc:_cOption( "UseAutosave" )
   enddo

   if nEvent == 0
      ? "Print timeout"
   elseif nEvent == 1
      ? "Printed successfully"
   elseif nEvent == 2
      ? "Error:", oPdfc:cError():Description
   else
      ? "Unknown event"
   endif

   //oPdfC:cDefaultPrinter := cDefaultPrinter
   oPDFC:cClose()
   oPdfC := NIL

return nil


La necesidad de hacerlo así es porque tampoco he encontrado una forma de enviar directamente a impresión el archivo xml, así que opté por convertirlo a pdf, pero no me funciona...

Agradezco cualquier ayuda con el tema.

Saludos,
Javier
Alin
 
Posts: 18
Joined: Mon Dec 06, 2010 6:35 pm

Re: Usar Pdfcreator para imprimir XML

Postby hmpaquito » Sun Mar 17, 2013 3:20 pm

Alin,

No te molestes, pero me suena a que lo que pretendes es matar moscas a cañonazos.

¿ No será más fácil, más controlable, hacer una impresión de xml, utilizando por ejemplo la función de recorrido de xml que Antonio Linares, amablemente publicó en el foro ? Yo pienso que sí. Para imprimir el xml te bastará una impresión que vaya incrementando el margen de impresión según el elemento impreso.

Saludos
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Usar Pdfcreator para imprimir XML

Postby Alin » Sun Mar 17, 2013 4:10 pm

Hola,

Al contrario amigo, gracias por contestar...

No tengo absoluta idea de lo que me hablas, pero si pudieras compartir algo de código acerca de lo que dices para darme alguna luz.

Agradezco la ayuda.

Saludos,
Javier
Alin
 
Posts: 18
Joined: Mon Dec 06, 2010 6:35 pm

Re: Usar Pdfcreator para imprimir XML

Postby hmpaquito » Sun Mar 17, 2013 9:12 pm

Javier,

En este hilo tienes la manera de recorrer un .xml: viewtopic.php?f=3&t=25745&start=0&hilit=xml+viewer

Usa ese "recorrido" para imprimirlo, algo asi como

PRINT oPrn
Aqui recorre imprimiendo los nodos del xml. Utiliza el metodo Depth() para calcular el margen de impresion de cada nodo.
END PRINT

Saludos
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 35 guests