✒️ABAP Los archivos locales y el upload de datos
ABAP Los archivos locales y el upload de datos
Tratamientos de archivos locales
Abap nos proporciona una serie de métodos útiles para el tratamientos de archivos locales mediante una PC mediante la clase CL_GUI_FRONYEND_SERVICIES.
Para visualizar los métodos disponibles en las clase, editamos un programa y presionamos el botón MODELO (PATTERN).
Ahí marcamos PATRÖN P.OBJETOS (ABAP OBJECT PATTERNS) y presionamos continuar, en la siguiente pantalla ingresamos la clase CL_GUI_FRONTEND_SERVICES. Luego presionamos F4 en MÉTODOS y veremos la siguiente pantalla con todos los métodos de la clase.
FILE_OPEN_DIALOG: para mostrar la pantalla de navegación que permita al usuario poder seleccionar el archivo del directorio de su PC.
GUI_DOWNLOAD: para descargar datos de los programas a archivos en la PC
GUI_UPLOAD: para bajar datos de los archivos de la PC a nuestros programas.
otra forma de visualizar es el contenido de la clase CL_GUI_FRONTEND_SERVICES ingresando al class builder trans. SE24.
Búsqueda de archivos en la PC
PAra buscar archivos locales en le directorio de la pc útilizamos el método FILE_OPEN_DIALOG
FORM abrir_ventana_archivos . DATA: tl_filetable TYPE filetable, stl_file_table TYPE file_table, vl_rc TYPE i. CALL METHOD cl_gui_frontend_services=>file_open_dialog EXPORTING default_filename = '*' CHANGING rc = vl_rc file_table = tl_filetable. READ TABLE tl_filetable INDEX 1 INTO stl_file_table. IF sy-subrc EQ 0. MOVE stl_file_table TO p_path. ENDIF. Analizamos los parámetros más importantes del método. WINDOWS_TITLE: asigna un título a la ventana de búsqueda. DEFAULT_FILENAME: contiene el nombre del archivo que buscamos en nuestra PC, si colocamos el literal asterisco podremos ver todos los archivos que se encuentren en los directorios. FILE_TABLE: contiene la ruta y nombre del archivo seleccionado. Igual que las funciones el método FILE_OPEN_DIALOG tiene definida excepciones cada una tiene una descripción que contempla cada uno de los errores posibles que pueden ocurrir al ejecutar dicho método. FILE_OPEN_DIALOG trabaja con archivos locales ya que facilita la interacción entre el usuario y el programa, evita errores de tipo de datos. Lectura de datos de los archivos localesPara leer datos de los archivos locales en las tablas internas de nuestros programas, utilizamos el método GUI_LOAD. * Se abre el archivo de entrada para lectura CALL METHOD cl_gui_frontend_services=>gui_upload EXPORTING filename = vl_file filetype = 'ASC' has_field_separator = '' CHANGING data_tab = ti_archivo[] EXCEPTIONS file_open_error = 1 file_read_error = 2 no_batch = 3 gui_refuse_filetransfer = 4 invalid_type = 5 no_authority = 6 unknown_error = 7 bad_data_format = 8 header_not_allowed = 9 separator_not_allowed = 10 header_too_long = 11 unknown_dp_error = 12 access_denied = 13 dp_out_of_memory = 14 disk_full = 15 dp_timeout = 16 not_supported_by_gui = 17 error_no_gui = 18 OTHERS = 19. IF sy-subrc NE 0. * Error al levantar el archivo de entrada MESSAGE e000(z_prueba) WITH text-004. ENDIF.
Parámetros más importantes de este método FILENAME: contiene el directorio y nombre del archivo local con el que estamos trabajando. FILETYPE: contiene tipo o extensión del archivo local.
- BIN: para archivos binarios.
- ASC: para archivos ASCII.
- DAT: para archivos EXCEL. Las columnas son separada utilizando tabs. Las líneas son separadas con saltos de línea.
- WK1: para archivos de excel y de lotus.
HAS_FIELD_SEPARATOR: indica el archivo local que tiene separadores.
DATA_TAB: es la tabla donde almacenamos los datos del archivo local.
En este método están definidas excepciones que contemplan cada uno de los errores que se pueden producir con este método.
Se utilizan las funciones WS_UPLOAD y UPLOAD no son recomendables ya que las utilización de esas funciones son considerada objetos obsoletos.
 
 
 
Sobre el autor
Publicación académica de Juan Carlos Pavicich, en su ámbito de estudios para la Carrera Consultor ABAP.
Juan Carlos Pavicich
Profesión: Técnico Informático - Argentina - Legajo: VR91L
✒️Autor de: 116 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Tengo el agrado de dirigirme a ud/s con el objeto de mencionar mi experiencia y conocimientos técnicos necesarios para desarrollar actividades en el rubro de su empresa.
Certificación Académica de Juan Pavicich