|
#1
|
|||
|
|||
Archivo txt
Hola,
Necesito generar un archivo txt y luego enviarla a un servidor externo, favor si me pueden orientar para la sintaxis Gracias |
#2
|
||||
|
||||
Archivo txt
Para generar un txt yo primero generé una tabla interna con los datos que necesitaba y luego use la función WS_DOWNLOAD, hace poco que estoy programando en ABAP así que no sabría decirte si hay una forma más fácil de hacerlo.
Acá te copio el ejemplo que yo encontré de esa función: ********************************************************** * Download program using the functions WS_DOWNLOAD ********************************************************** REPORT Zdownload. TABLES: Zxxxx. DATA: BEGIN OF TZXXXX OCCURS 100, LINE_NO(3), FILLER1(1), TXT50(50), AMOUNT(10), BUDAT(10), END OF TZXXXX. PARAMETERS: P-FILE LIKE RLGRAP-FILENAME DEFAULT 'C:\TEMP\test.xls', S_FILE AS CHECKBOX DEFAULT 'X'. MOVE 'No' TO TZXXXX-LINE_NO. MOVE 'Description' TO TZXXXX-TXT50. MOVE 'Amount' TO TZXXXX-AMOUNT. MOVE 'DATE' TO TZXXXX-BUDAT. APPEND TZXXXX. CLEAR TZXXXX. SELECT * FROM ZXXXX ORDER BY LINE_NO. MOVE ZXXXX-LINE_NO TO TZXXXX-LINE_NO. MOVE ZXXXX-TXT50 TO TZXXXX-TXT50. WRITE ZXXXX-AMOUNT TO TZXXXX-AMOUNT USING EDIT MASK 'RRV_______.__'. WRITE ZXXXX-BUDAT TO TZXXXX-BUDAT. APPEND TZXXXX. CLEAR TZXXXX. ENDSELECT. CALL FUNCTION 'WS_DOWNLOAD' EXPORTING * BIN_FILESIZE = ' ' * CODEPAGE = ' ' FILENAME = P-FILE FILETYPE = 'DAT' * filetype = 'WK1' * MODE = ' ' * WK1_N_FORMAT = ' ' * WK1_N_SIZE = ' ' * WK1_T_FORMAT = ' ' * WK1_T_SIZE = ' ' * COL_SELECT = ' ' * COL_SELECTMASK = ' ' * importing * filelength = TABLES DATA_TAB = TZXXXX * FIELDNAMES = EXCEPTIONS FILE_OPEN_ERROR = 1 FILE_WRITE_ERROR = 2 INVALID_FILESIZE = 3 INVALID_TABLE_WIDTH = 4 INVALID_TYPE = 5 NO_BATCH = 6 UNKNOWN_ERROR = 7 OTHERS = 8. IF SY-SUBRC = 0. SKIP. WRITE:/ 'Very good, download successful'. ELSE. FORMAT COLOR COL_TOTAL. SKIP. WRITE:/ 'Error in Download'. SKIP. WRITE:/ 'Is the file Open by Excel or Lotus?'. ENDIF. Espero haberte ayudado. Saludos. |
#3
|
|||
|
|||
Envio pof FTP
Iura quieres enviar el archivo por FTP por que si es así tienes que hacer una rutina más después de que has convertido el archivo. |
#4
|
|||
|
|||
Tengo el siguiente codigo, pero no me carga los datos en el archivo, favor si pueden ayudarme a corregir el error
gracias TABLES: ZTHR_USUA_EMPL,PA0001,PA0002,PA0032. DATA: BEGIN OF T_DATA1 OCCURS 0, T_BURKS LIKE ZTHR_USUA_EMPL-BUKRS, T_PERNR LIKE ZTHR_USUA_EMPL-PERNR, T_ORGEH LIKE PA0001-ORGEH, T_NACHN LIKE PA0002-NACHN, T_VORNA LIKE PA0002-VORNA, T_GEBNR LIKE PA0032-GEBNR, T_ZIMNR LIKE PA0032-ZIMNR, END OF T_DATA1. DATA: BEGIN OF T_CORREO OCCURS 100, var type string, END OF T_CORREO. SELECT ZTHR_USUA_EMPL~BUKRS ZTHR_USUA_EMPL~PERNR PA0001~ORGEH PA0002~NACHN PA0002~VORNA PA0032~GEBNR PA0032~ZIMNR INTO TABLE T_DATA1 FROM ZTHR_USUA_EMPL INNER JOIN PA0001 ON ZTHR_USUA_EMPL~PERNR = PA0001~PERNR AND endda ='99991231' INNER JOIN PA0002 ON ZTHR_USUA_EMPL~PERNR = PA0002~PERNR AND PA0002~endda ='99991231' INNER JOIN PA0032 ON ZTHR_USUA_EMPL~PERNR = PA0032~PERNR AND PA0032~endda ='99991231'. * *WHERE ZTHR_USUA_EMPL~BUKRS IN S_TSOC * AND ZTHR_USUA_EMPL~PERNR IN S_TEMPL. CONCATENATE T_DATA1-T_ORGEH T_DATA1-T_NACHN T_DATA1-T_PERNR INTO T_CORREO-VAR. CALL FUNCTION 'DOWNLOAD' EXPORTING * BIN_FILESIZE = ' ' * CODEPAGE = ' ' FILENAME = 'D:\Users\Ialcala\My Documents\Irua\txt\prueba.txt' FILETYPE = 'ASC' * ITEM = ' ' * MODE = ' ' * WK1_N_FORMAT = ' ' * WK1_N_SIZE = ' ' * WK1_T_FORMAT = ' ' * WK1_T_SIZE = ' ' * FILEMASK_MASK = ' ' * FILEMASK_TEXT = ' ' * FILETYPE_NO_CHANGE = ' ' * FILEMASK_ALL = ' ' * FILETYPE_NO_SHOW = ' ' * SILENT = 'S' * COL_SELECT = ' ' * COL_SELECTMASK = ' ' * NO_AUTH_CHECK = ' ' * IMPORTING * ACT_FILENAME = * ACT_FILETYPE = * FILESIZE = * CANCEL = TABLES DATA_TAB = t_correo * FIELDNAMES = * EXCEPTIONS * INVALID_FILESIZE = 1 * INVALID_TABLE_WIDTH = 2 * INVALID_TYPE = 3 * NO_BATCH = 4 * UNKNOWN_ERROR = 5 * GUI_REFUSE_FILETRANSFER = 6 * OTHERS = 7 . IF SY-SUBRC <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. |
#5
|
|||
|
|||
Haces un concatenate en t_correo_var pero no haces el append por lo que la tabla esta vacia y no te descarga nada, si quieres descargar los datos del select tendrias que poner t_data1 en el parametro data_tab
|
#6
|
|||
|
|||
Listo muchas gracias . todo perfecto
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|