✒️ABAP Los archivos locales y el download de datos
ABAP Los archivos locales y el download de datos
Apuntes ING Ezequiel Hurtado Benitez
La grabación de datos en archivos locales, para grabar los datos existentes en las tablas internas de nuestros programas ABAP en archivos locales ubicados en la PC, utilizamos el método GUI_DOWNLOAD perteneciente a la clase CL_GUI_FRONTEND_SERVICES. Algunos de sus parámetros son: FILENAME, contiene el directorio y el nombre del archivo a descargar a la PC; FILETUPE, contiene el tipo de extensión del archivo que descargamos a la PC. Los tipos o extensiones admitidas son las siguientes: BIN, para archivos binarios, se debe especificar la longitud del archivo en el parámetro BIN_FILESIZE, la tabla interna que se utiliza debe tener un solo campo del tipo X; ASC, para archivos ASCII; DAT, para archivos Excel, las columnas son separadas utilizando tabs, las líneas son separadas con saltos de línea; WK1, para archivos Excel y de Lotus. WRITE_FILED_SEPARATOR, indica si se generará un separador de archivos o no y cual será; DATA_TAB, aquí se almacena el contenido del archivo, esta tabla interna debe tener la misma estructura del archivo. En el método QUI_DOWNLOAD se encuentran definidas excepciones con descripciones que contemplan cada uno de los errores que se pueden producir al ejecutar el método. ( En algunos programas ABAP, podemos ver que se utilizan los módulos de funciones DOWNLOAD y WS_DOWNLOAD. No es recomendable la utilización de estos módulos de funciones debido a que actualmente son considerados obsoletos por SAP.) Para realizar una prueba sobre como funciona el método GUI_DOWNLOAD vamos a utilizar el archivo de entrada USUARIOS.TXT. Vamos a trabajar con un numero de programa ABAP que se llamará ZTEST_DOWNLOAD, el cual levanta el archivo USUARIOS.TXT, almacenando sus archivos en la tabla interna TI_USUARIOS y por último escribe los registros de la tabla interna en un archivo de salida mediante la utilización del método GUI_DOWNLOAD. Dentro de la subrutina ABRIR_VENTANA_ARCHIVOS se ejecuta el método FILE_OPEN_DIALOG para buscar el archivo local en el directorio del PC. Dentro de la subrutina LEVANNTAR_ARCHIVO_ENTRADA se ejecuta el método GUI_UPLOAD para levantar a la memoria los registros de datos almacenados en el archivo local de entrada. Y dentro de la subrutina GRABAR_ARCHIVO_SALIDA se ejecuta el método GUI_DOWNLOAD para grabar en un archivo local de salida los registros de datos que se encuentran almacenado en la tabla interna TI_USUARIOS. Vamos a ejecutar el programa ZTEST_DOWNLOAD y para ello hacemos clic en el matchcode para buscar el archivo de entrada USUARIOS.TXT. En la ventana de diálogo que se muestra a continuación seleccionamos el archivo de entrada USUARIOS.TXT haciendo doble clic sobre el, y ahora con el directorio y el nombre del archivo de entrada completos vamos a ejecutar el programa. Al ejecutarse el método GUI_UPLOAD dentro de la subrutina ABRIR_VENTANA_ARCHIVOS vamos a visualizar en la pantalla una ventana de diálogo en donde el sistema nos informa que se está intentando acceder al archivo de entrada y debemos hacer clic en el botón Permitir para dar acceso. Luego si hacemos debugging vamos a visualizar los registros del archivo de entrada levantados en la tabla interna TI_USUARIOS. A continuación se va a ejecutar el método GUI_DOWNLOAD dentro de la subrutina GRABAR_ARCHIVO_SALIDA. Si intentamos grabar el archivo local de salida en un directorio de nuestra PC en donde no tenemos permisos de escritura entonces vamos a visualizar en la barra de estado de la pantalla un mensaje de error que os informa que el acceso al archivo fue denegado. Si intentamos grabar el archivo local de salida en un directorio de nuestra PC en donde si tenemos permiso de escribir entonces vamos a visualizar en la pantalla una ventana de dialogo en donde el sistema nos informa que se está intentando crear el archivo en el directorio y debemos hacer clic en el botón Permitir para continuar. Luego vamos a visualizar el mensaje de éxito en la barra de estado, el cual nos indica que la transacción de datos se realizó correctamente y se especifica la cantidad de bytes transferida. Y si chequeamos el directorio que introducimos para generación de archivos de salida, en este caso el escritorio, entonces vamos a visualizar el archivo generado. Y el archivo vamos a visualizar el contenido del mismo que no es ni más ni menos que el miso contenido del archivo de entrada que utilizamos para la ejecución del programa.
 
 
 
Sobre el autor
Publicación académica de Ezequiel Hurtado Benitez, en su ámbito de estudios para la Carrera Consultor ABAP.
Ezequiel Hurtado Benitez
Profesión: Ingeniero Mecatrónico - Colombia - Legajo: FD18B
✒️Autor de: 45 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Presentación:
Ingeniero mecatrónico bilingüe con maestría en dirección de ventas y marketing empresarial, con conocimientos y experiencia en programación, diseño, elaboración y pruebas en proyectos de automatizació
Certificación Académica de Ezequiel Hurtado