PDA

Ver la Versión Completa : convertir una tabla interna en archivo en una carpeta


pancho6102
23/09/10, 21:45:44
Que tal Foro buen dia necesito de su ayuda quiero hacer lo siguiente:

en una pantalla de inicio pido la ruta de una carpeta local y ejecuto.

al ejecutar mi programa realizo una serie de consultas a tablas extraigo informacion de materiales por centro y los meto en varias tablas internas una por cada centro. lo que necesito es lo siguiente:

depues de hacer sus respectivos writes de los campos en mi reporte, despues debo de crear un archivo por cada tabla interna tal archivo debe de estar en la ruta que escribimos al inicio de el programa y debe de tener el sig. nombre: "NOMBRECENTRO".ACK (ACK es la extension que me piden) las tablas internas ya las tengo pero no se como convertirla tabla en archivo y ponerla en la carpeta deseada, desconozco si hay un modulo de funcion.
porfavor necesito de su ayuda.
gracias.

HBERKHOFF
23/09/10, 22:44:23
Señor no se si es esto lo que busca, espero le sea de utilidad

call function 'GUI_DOWNLOAD'
exporting
filename = 'C:\PASO\"tabla abajar".txt'
filetype = 'ASC'
trunc_trailing_blanks_eol = ' '
confirm_overwrite = 'X'
tables
data_tab = "tabla de paso que creas"
exceptions
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.

pancho6102
23/09/10, 23:05:40
HBERKHOFF el gui_download, tengo una duda me pide una ruta y nombre de archivo y mete su contenido a una tabla no? yo lo que quiero es lo contrario teniendo una tabla crear el archivo en una ruta local.

o puede ocuparse de forma contraria??

ayudenme.

caparase
24/09/10, 22:46:26
La función que puso HBERKHOFF es la correcta, pero no te confundas con el path. Cuando pone 'C:\PASO\"tabla abajar".txt', se refiere a la ruta de destino, la que puedes obtener a través de la función 'WS_FILENAME_GET' (obsoleta, pero mientras no encuentre una mejor). Con esta función le preguntas al usuario por el path donde quiere guardar los datos

CALL FUNCTION 'WS_FILENAME_GET'
EXPORTING
def_path = 'C:\'
mask = ',*.*,*.*. '
mode = 'S'
title = 'guardar en...'
IMPORTING
filename = filename
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.

en el campo filename guarda el path donde quiere guardar el dato, y ese dato es el que le pasas a la función de abajo (ojo con los tipos de datos que maneja cada uno --- puede ocurrir un DUMP si no corresponden)


call function 'GUI_DOWNLOAD'
exporting
filename = 'C:\PASO\"tabla abajar".txt'
filetype = 'ASC'
trunc_trailing_blanks_eol = ' '
confirm_overwrite = 'X'
tables
data_tab = "tabla de paso que creas"
exceptions
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.

pancho6102
27/09/10, 16:02:10
CALL FUNCTION 'WS_FILENAME_GET'

Gracias si me sirvio la funcion, me he pasado buscando por mucho tiempo una funcion que sustituya a WS_FILENAME_GET pero no he encontrado al menos ya se que no soy el unico que la utiliza aun cuando se diga que es absoleta.