SoloCodigo

Programación General => Power Builder => Mensaje iniciado por: diespinola en Viernes 18 de Diciembre de 2009, 21:06

Título: Guardar un DW composite en formato PDF
Publicado por: diespinola en Viernes 18 de Diciembre de 2009, 21:06
hola  a todos! Necesito en forma urgente saber como guardar un dw composite compuesto por 3 datawindows... ya desarrollé un codigo que me funciona muy bien con datawindows simples pero al aplicar a un dw composite no me genera el PDF.

El codigo para DW simples es el siguiente:

//CONVIERTE Y GUARDA EL DW A PDF
string ls_archivo
integer li_ret
ls_archivo = 'nc'+string(ll_doc)+'.pdf'
dw_print.Object.DataWindow.Export.PDF.Method = XSLFOP! dw_print.Object.DataWindow.Export.PDF.xslfop.Print="no"
li_ret = dw_print.SaveAs('\serverc$Pegasus 2001NC'+ls_archivo,PDF!,true)

COMO HABIA DICHO ESTE CODIGO FUNCIONA PERFECTAMENTE PARA DW SIMPLES PERO NO PARA DW COMPOSITE....

POR FAVOR AGUARDO SU AYUDA!!!

DESDE YA MUCHAS GRACIAS!
Título: Re: Guardar un DW composite en formato PDF
Publicado por: F_Tanori en Domingo 20 de Diciembre de 2009, 05:27
Hola, un metodo efectivo es usando una impresora virtual, que te envie el datawindow a un pdf y utilizando un postscript

Descargate Ghostscript
http://pages.cs.wisc.edu/~ghost/ (http://pages.cs.wisc.edu/~ghost/" onclick="window.open(this.href);return false;)

Como impresora virtual hay muchas
Te recomiendo PDF reDirect

http://www.exp-systems.com/PDFreDirect/Downloads.htm?1 (http://www.exp-systems.com/PDFreDirect/Downloads.htm?1" onclick="window.open(this.href);return false;)

Código: Visual Basic
  1. //CONVIERTE Y GUARDA EL DW A PDF
  2. string ls_archivo
  3. integer li_ret
  4. ls_archivo = 'nc'+string(ll_doc)+'.pdf'
  5.  
  6.     dw_print.Object.DataWindow.Export.PDF.Method = Distill!
  7.     dw_print.Object.DataWindow.Printer = "PDF reDirect v2" // Nombre de la impresora virtual
  8.     dw_print.Object.DataWindow.Export.PDF.Distill.CustomPostScript="Yes" // Permitir Postscript
  9.     li_ret = dw_print.SaveAs('\serverc$Pegasus 2001NC'+ls_archivo,PDF!,true)
  10.  
  11.  

Para que funcione el codigo, deberas copiar el contenido del directorio bin de donde se instalo GhostScript (Ejemplo: C:Program Filesgsgs8.64bin)
a WindowsSystem32

Suerte

Saludos