#1
|
|||
|
|||
Ejemplo generar smartforms a PDF
Hola foreros, necesito un ejemplo de como transformar la impresion de un smartfomrs a PDF, es un formulario muy simple pero debeo transformarlo a PDF.
de antemano agradecido rhein |
#2
|
|||
|
|||
Buen dia!! Proba con este codigo y contanos como te fue!!
Saludos!! *&---------------------------------------------------------------------* *& Report Z_ALE_SMARTFORMS_PDF *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT Z_ALE_SMARTFORMS_PDF. PARAMETERS: SPOOLNO LIKE TSP01-RQIDENT, " Orden Spool DOWNLOAD AS CHECKBOX DEFAULT 'X', P_FILE LIKE RLGRAP-FILENAME DEFAULT 'C:\file.pdf'. " Destino del " archivo DATA: name like RSTSTYPE-NAME, client like tst01-dclient. * Tabla donde se van a guardar los datos del SPOOL, para bajarlos al * archivo DATA PDF LIKE TLINE OCCURS 100 WITH HEADER LINE. DATA: v_file TYPE string. * Se utiliza para poder utilizarlo como condición cuando se pregunta si * es = ´X´ OTF (Sapscript, Smartform) = '' (Lista) DATA is_otf. * Tipo de dato donde se guarda el tipo de documento de la orden de * spool, si es un Smartforms o una lista ABAP DATA: objtype LIKE rststype-type, type LIKE rststype-type. START-OF-SELECTION. TABLES: tsp01. SELECT SINGLE * FROM tsp01 WHERE rqident = spoolno. client = tsp01-rqclient. " Mandante name = tsp01-rqo1name. " N° de Spool * Función que se le pasan los datos de la orden de Spool con la cual * vamos a trabajar y devuelve de que tipo es el documento que tiene la * orden de Spool. 'OTF' = Smartforms CALL FUNCTION 'RSTS_GET_ATTRIBUTES' EXPORTING AUTHORITY = 'SP01' CLIENT = client NAME = name PART = 1 IMPORTING * CHARCO = * CREATER = * CREDATE = * DELDATE = * MAX_CREDATE = * MAX_DELDATE = * NON_UNIQ = * NOOF_PARTS = * RECTYP = * SIZE = * STOTYP = TYPE = type OBJTYPE = objtype EXCEPTIONS FB_ERROR = 1 FB_RSTS_OTHER = 2 NO_OBJECT = 3 NO_PERMISSION = 4. IF objtype(3) = 'OTF'. " Si es un Smartforms is_otf = 'X'. ELSE. " Si es una lista ABAP is_otf = space. ENDIF. IF is_otf = 'X'. " Si es un Smartforms " Función que se encarga de bajar los datos del documento (Smartforms) " de la orden de Spool a una tabla interna (PDF) CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF' EXPORTING SRC_SPOOLID = spoolno NO_DIALOG = ' ' " DST_DEVICE = " PDF_DESTINATION = " IMPORTING " PDF_BYTECOUNT = numbytes " PDF_SPOOLID = spoolno "" OTF_PAGECOUNT = " BTC_JOBNAME = jobname " BTC_JOBCOUNT = jobcount TABLES PDF = pdf EXCEPTIONS ERR_NO_OTF_SPOOLJOB = 1 ERR_NO_SPOOLJOB = 2 ERR_NO_PERMISSION = 3 ERR_CONV_NOT_POSSIBLE = 4 ERR_BAD_DSTDEVICE = 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. ELSE. " Si es una lista ABAP " Función que se encarga de bajar los datos del documento (Lista ABAP) " de la orden de Spool a una tabla interna (PDF) CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF' EXPORTING SRC_SPOOLID = spoolno NO_DIALOG = ' ' " DST_DEVICE = " PDF_DESTINATION = " IMPORTING " PDF_BYTECOUNT = numbytes " PDF_SPOOLID = pdfspoolid "" LIST_PAGECOUNT = " 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. ENDIF. v_file = p_file. " Variable del nombre del path tipo string * Función que se encarga de bajar los datos guardados en una tabla * interna a PC en formato PDF. CALL FUNCTION 'GUI_DOWNLOAD' EXPORTING * BIN_FILESIZE = bin_filesize FILENAME = v_file FILETYPE = 'BIN' * APPEND = ' ' * CODEPAGE = ' ' * NO_BYTEORDER_MARK = ' ' * IMPORTING * FILELENGTH = c TABLES DATA_TAB = pdf * FORMAT_TAB = EXCEPTIONS FILE_WRITE_ERROR = 1 NO_BATCH = 2 GUI_REFUSE_FILETRANSFER = 3 INVALID_TYPE = 4 NO_AUTHORITY = 5 UNKNOWN_ERROR = 6.
__________________
El mundo es Redondo y de Ricota...... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|