✒️ABAP Los archivos locales y el upload de datos
ABAP Los archivos locales y el upload de datos
Unidad n°6: El tratamiento de archivos y los Fields Symbols
Lección n°1: Los archivos locales y el upload de datos
El tratamiento de archivos locales:
ABAP nos da muchos métodos útiles para el tratamiento de archivos locales ubicados en la PC, mediante la clase CL_GUI_FRONTEND_SERVICES.
Para ver todos los métodos disponibles de la clase CL_GUI_FRONTEND_SERVICES:
- Editamos un programa y hacemos clic en Modelo de la barra de herramientas de la trans. SE38.
- Dentro, marcamos la opción Patrón p.objetos ABAP y clic en Continuar.
- En la prox. pantalla en Clase/Interface escribimos el nombre de la clase "CL_GUI_FRONTEND_SERVICES".
En el campo Método entramos al matchcode y veremos todos los métodos de esta clase. Los mas importantes son:
FILE_OPEN_DIALOG: para mostrar la pantalla de navegación que permite al usuario poder seleccionar un archivo del directorio de su PC.
GUI_DOWNLOAD: para descargar datos de los programas que están en la memoria de los archivos en la PC
GUI_UPLOAD: para subir datos de los archivos de la PC a la memoria para poder usarlos en los programas.
Otra forma de ver el contenido de CL_GUI_FRONTEND_SERVICES es entrando al Generador de clases de la trans. SE24; y dentro de la pestaña Métodos encontraremos todos los métodos disponibles para la clase.
Trans SE24: para crear, modificar y visualizar todas las clases Z del sistema y solo visualizar las clases estándar.
La búsqueda de archivos en la PC:
Usaremos el método FILE_OPEN_DIALOG, que pertenece a la clase CL_GUI_FRONTEND_SERVICES, para buscar archivos locales en el directorio de nuestra PC.
EJ: dentro de la pantalla de selección del parám. P_PATH, declararemos que almacenaremos el directorio y nombre del archivo local de entrada:
- Dentro del evento AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path, declaramos la subru. ABRIR_VENTANA_ARCHIVOS:
- Dentro de ésta subru. ejecutamos el método FILE_OPEN_DIALOG:
Parámetros importantes del FILE_OPEN_DIALOG:
WINDOW_TITLE: asigna un título a la venta de búsqueda.
DEFAULT_FILENAME: contiene el nombre del archivo que buscamos en la PC. Si ponemos un asterisco, veremos todos los archivos que están en los directorios.
FILE_TABLE: contiene la ruta y el nombre del archivo
El método FILE_OPEN_DIALOG tiene definidas excepciones, cada una tiene asociada una desc. que contempla cada uno de los posibles errores que podrían ocurrir en su ejecución.
- Ejecutamos el programa ZTEST_ARCHIVOS_LOCALES; y hacemos clic en el matchcode del campo de entrada:
- A continuación veremos una ventana de diálogo que es generada por ejecutar FILE_OPEN_DIALOG, en donde podremos seleccionar el archivo que queremos.
Es recomendable usar el método FILE_OPEN_DIALOG en los programas que trabajan con archivos locales, ya que facilita ampliamente la interacción entre el usuario y el programa, y evita errores de tipeo de datos.
La lectura de datos de los archivos locales:
Para leer datos de los archivos locales de las ti de nuestros programas, usamos el método GUI_UPLOAD, que pertenece a la clase CL_GUI_FRONTEND_SERVICES:
Sus parám. más importantes son:
- FILENAME: contiene el directorio y nombre del archivo local con el que estamos trabajando.
- FILETYPE: contiene el tipo o extensión del archivo local.
Los tipos admitidos son:
BIN: para archivos binarios.
ASC: para archivos ASCCI
DAT: para archivos Excel. Las columnas son separadas usando tabs. Las líneas son separadas con saltos de línea.
WK1: para archivos Excel y de Lotus. - HAS_FIELD_SEPARATOR: indica que el archivo local tiene separadores.
- DATA_TAB: es la ti donde almacenaremos los datos del archivo local.
En este método están definidas las excepciones con desc. que contemplan cada error que podría producirse.
En algunos programas podemos usar los mód. de fun. WS_UPLOAD y UPLOAD. Pero no es recomendable, ya que actualmente son obsoletos.
Volviendo al ejemplo anterior, para probar el método GUI_UPLOAD usaremos el archivo de entrada USUARIOS.TXT, que lo seleccionaremos desde el matchcode; y ya puesto el directorio y nombre del archivo, ejecutaremos el programa
Al ejecutar el método GUI_UPLOAD veremos en la pantalla, una ventana en donde el sistema nos informa que se está intentando acceder al archivo y debemos darle acceso.
Finalmente si hacemos debugging veremos los registros del archivo de entrada levantados en la ti TI_USUARIOS:
 
 
 
Sobre el autor
Publicación académica de Candela Estefanía Calzada, en su ámbito de estudios para la Carrera Consultor ABAP.
Candela Estefanía Calzada
Profesión: Técnica Electrónica - Argentina - Legajo: JW91W
✒️Autor de: 160 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.
Certificación Académica de Candela Calzada