Ver la Versión Completa : ayuda con Report para pasarlo a PDF
vamp_01
09/04/10, 15:37:31
Hola amigos foreros.....como estas?
tengo un problema, tengo un reporte que se muestra por pantalla y esta hecho con write para mostrar la data al usuario.
Bueno la exquisites que quiere el usuario es que quiere bajar ese mismo write que muestra por pantalla, llevarlo a PDF, me pueden ayudar.
De ante mano GRacias
gazparluna
09/04/10, 16:48:03
bueno encontre esto en una web pero nose si pueda poner links mejor te pongo el código:
**********************************************************************
* Definición de variables *
**********************************************************************
DATA: filesize TYPE i,
header LIKE thead,
options LIKE itcpo,
result LIKE itcpp,
otf LIKE itcoo OCCURS 0 WITH HEADER LINE,
lines LIKE tline OCCURS 0 WITH HEADER LINE,
lv_file TYPE string.
**********************************************************************
* Definición de la pantalla de selección *
**********************************************************************
SELECTION-SCREEN BEGIN OF BLOCK blq1 WITH FRAME TITLE text-t01.
PARAMETERS:
p_impre TYPE pri_params-pdest OBLIGATORY,
p_file TYPE rlgrap-filename OBLIGATORY DEFAULT ‘C:\PRUEBA.PDF’.
SELECTION-SCREEN END OF BLOCK blq1.
**********************************************************************
* Proceso principal *
**********************************************************************
*Se completa tabla lines con el contenido que queramos que tenga el archivo PDF
lines-tdline = ‘Este es el texto que aparecerá en el archivo PDF’.
lines-tdformat = ‘K’.
APPEND lines.
*Se obtienen y definen las opciones de formato del archivo
options-tddest = p_impre. "Nombre de impresora local
options-tdnewid = ‘X’.
options-tdgetotf = ‘X’.
CALL FUNCTION ‘PRINT_TEXT’
EXPORTING
device = ‘PRINTER’
dialog = ‘ ‘
application = ‘TX’
header = header
options = options
IMPORTING
result = result
TABLES
lines = lines
otfdata = otf
EXCEPTIONS
canceled = 01
device = 02
form = 03
options = 04
unclosed = 05
unknown = 06
format = 07
textformat = 08
communication = 09.
* Se convierte a PDF
CALL FUNCTION ‘CONVERT_OTF’
EXPORTING
format = ‘PDF’
max_linewidth = 132
IMPORTING
bin_filesize = filesize
TABLES
otf = otf
lines = lines
EXCEPTIONS
err_conv_not_possible = 1.
* Bajamos el archivo
lv_file = p_file.
CALL FUNCTION ‘GUI_DOWNLOAD’
EXPORTING
bin_filesize = filesize
filename = lv_file
filetype = ‘BIN’
* APPEND = ‘ ‘
* CODEPAGE = ‘ ‘
* NO_BYTEORDER_MARK = ‘ ‘
* IMPORTING
* FILELENGTH = c
TABLES
data_tab = lines
* FORMAT_TAB =
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6.
espero que te sirva.
Por cierto soy nuevo en este foro, tengo casi un año en abap, espero y pueda serles de ayuda.
saludos a todos
oarranzli
12/04/10, 07:06:08
Hola vamp01,
SAP provee del report estándar RSTXPDFT4 que permite descargar en PDF las órdenes de spool generadas.
Espero te sirva de ayuda.
Saludos.
sconoredhot
13/04/10, 13:01:13
Hola,
También puedes probar llamando a la función
CONVERT_ABAPSPOOLJOB_2_PDF
que convierte el spool a PDF
CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = spoolno
no_dialog = no
dst_device = 'locl'
pdf_destination = 'T'
IMPORTING
pdf_bytecount = numbytes
pdf_spoolid = pdfspoolid
list_pagecount = list_count
btc_jobname = jobname
btc_jobcount = jobcount
TABLES
pdf = pdf
EXCEPTIONS
err_no_abap_spooljob = 1
err_no_spooljob = 2
err_no_permission = 3
err_conv_not_possible = 4
err_bad_destdevice = 5
user_cancelled = 6
err_spoolerror = 7
err_temseerror = 8
err_btcjob_open_failed = 9
err_btcjob_submit_failed = 10
err_btcjob_close_failed = 11.
Saludos
vamp_01
16/04/10, 19:28:35
amigos mios, primero que nada muchas gracias por responder....
he probado todo lo que me han dicho....
pero aun sigue el problema ya sea por la funcion o por el programa...
nada de nada....
imprimo el spool que esta con la impresion horizontal y nada, pero genero un archivo en la spool que tiene la impresion vertical y lo hace sin problemas...
me pueden ayudar con estde nuevo problema, es decir, el pdf no se crea con la funcion pq el archivo en la spool esta horizonta....
ese es el tema...
atento a lo que me digan.....
Gracias
Chemo_666
16/04/10, 22:49:08
Tal vez suene muy simplista la respuesta, pero no te saldrá "mas barato" instalar un software que imprima a PDF? por decir el CutePDF Writer que es un freeware que bajas de la red. Cuando mandes imprimir seleccionas esa impresorá y voilá
Slds
vamp_01
19/04/10, 14:11:11
Gracias a todos....ya esta solucionado.....muchas gracias y me quedo con un respaldo del codigo...para futuras implementaciones...
gracias
vamp_01
19/04/10, 17:45:44
Amigos......ayuda tengo otro problema...
estoy ocupando la funcion 'CONVERT_ABAPSPOOLJOB_2_PDF' en un programa Z, pero cuando el reporte trae mas de 99 paginas, me pregunta si lo genero de fondo, le doy al boton si...y no me genera nada, es como que pierde los valores que les pase antes, y si le digo que no...se demora demasiado....
como puedo solucionar este problema?
Gracias
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web