✒️ABAP Los archivos locales y el upload de datos
ABAP Los archivos locales y el upload de datos
Archivos locales.
ABAP nos permite una serie de métodos útiles para el tratamiento de los archivos locales ubicados en un pc, esto mediante la clase CL_GUI_FRONTEND_SERVICES, para visualizar los métodos disponibles en dicha clase existen las 2 siguientes maneras:
* Desde la transacción SE38, se edita un programa y se pulsa el botón Modelo / Se tilda la opción Patrón p.objetos ABAP / Guardar / En Clase/Interface se escribe CL_GUI_FRONTEND_SERVICES / En el campo método se deglosan las opciones y se toma una.
* Desde la transacción SE24 Generador de clases, se escribe la clase CL_GUI_FRONTEND_SERVICES y se pulsa visualizar / Vamos a la pestaña métodos y allí encontramos todo.
Los más importantes son:
* FILE_OPEN_DIALOG: Muestra la pantalla de navegación para que el usuario seleccione un archivo del directorio de su pc.
* GUI_DOWNLOAD: Descarga datos de los programas ABAP que estan en la memoria al pc.
* GUI_UPLOAD: Subir datos de los archivos del pc a la memoria del servidor para usarlos en los programas ABAP.
Búsqueda de archivos en la PC.
Para buscar archivos locales del pc se utiliza el método FILE_OPEN_DIALOG perteneciente a la clase CL_GUI_FRONTEND_SERVICES. Se utiliza de la siguiente manera:
1. Se crea un parámetro para almacenar el directorio y el nombre del archivo local de entrada, así
PARAMETERS: p_path LIKE rlgrap_filename.
2. En el evento AT SELECTION-SCREEN ON VALUE-REQUEST FOR path se declara la subrutina abrir_ventana_archivos, así:
AT SELECTION-SCREEN ON VALUE-REQUEST FOR path
PERFORM abrir_ventana_archivos.
3. Dentro de dicha subrutina se ejecuta el método FILE_OPEN_DIALOG de la clase CL_GUI_FRONTEND_SERVICES, así:
FORM abrir_ventana_archivos.
DATA: tl_filetable TYPE filetable,
wl_file_table TYPE file_table,
vl_rc TYPE i.
CALL METHOD cl_gio_frotend_services=> file_open_dialog
EXPORTING default_filename = '*'
CHANGING rc = vl_rc
file_table = tl_filedtable.
READ TABLE tl_filedtable INDEX 1 INTO wl_file_table
IF sy-subrc EQ 0.
MOVE wl_file_table TO p_path.
ENDIF
Los parametros más importantes del método file_open_dialog son:
*WINDOW_TITLE: Asigna un título a la ventana de búsqueda.
*DEFAULT_FILENAME: Contiene el nombre del archivo que buscamos en la pc, al poner el * podremos ver todos los archivos que se encuentran en el directorio.
*FILE_TABLE: Contiene la ruta y el nombre del archivo seleccionado.
Este método tiene contempladas excepciones.
Lectura de datos en archivos locales.
Para leer los datos de los archivos locales en tablas internas de SAP, se utiliza el método GUI_UPLOAD, perteneciente a la clase CL_GUI_FRONTEND_SERVICES.
Los parámetros más importantes del método GUI_UPLOAD, son:
* Filename: Contiene el directorio y el nombre del archivo local con el que se trabaja,
* Filetype: Contiene el tipo o extensión del archivo loca.
* Has_field_separator: Indica que el archivo local tiene separadores.
* Data_tab: Tabla interna donde se almacenan los datos del archivo local.
Se admiten archivos tipo:
*BIN, bonarios. *ASC: ASCII. *DAT: Excel. *WK1: Excel y lotus. (Los archivos excel no deben tener la extensión .xls, sino que deben tener la extensión .csv)
Al subir el archivo SAP nos pedirá permiso para el acceso al fichero, a lo que debemos acceder. Y al hacer debuggin, veremos el archivo en SAP.
 
 
 
Sobre el autor
Publicación académica de Linda Carolina Zambrano León, en su ámbito de estudios para la Carrera Consultor ABAP.
Linda Carolina Zambrano León
Profesión: Agente - Peru - Legajo: XR55P
✒️Autor de: 63 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Linda Zambrano