Ir al contenido
Programación ABAP

EPS_GET_DIRECTORY_LISTING

Devuelve la lista de ficheros de un directorio del servidor de aplicación.

Transacción
SE37
Grupo
Subidas y bajadas de ficheros
Actualizado
21 de octubre de 2026

Para qué sirve

EPS_GET_DIRECTORY_LISTING lee el contenido de un directorio del servidor de aplicación SAP y devuelve los ficheros que contiene, con su tamaño y fecha. Admite una máscara para filtrar por nombre, como '*.csv'.

Se usa, por ejemplo, para procesar en un job todos los ficheros que deja un sistema externo en una carpeta de intercambio. Ojo: lista ficheros del servidor, no del PC del usuario; para el PC existe CL_GUI_FRONTEND_SERVICES=>DIRECTORY_LIST_FILES.

Parámetros

Esta función tiene muchos parámetros; aquí están los más usados. La lista completa se ve en la transacción SE37.

Importing

Lo que recibe la función. En CALL FUNCTION se pasan tras EXPORTING.

ParámetroTipoDescripción
DIR_NAMEObligatorioEPSF-EPSDIRNAMDirectorio del servidor.
FILE_MASKEPSF-EPSFILNAMMáscara de nombres, por ejemplo '*.csv'.

Exporting

Lo que devuelve. En CALL FUNCTION se recogen tras IMPORTING.

ParámetroTipoDescripción
FILE_COUNTER—Número de ficheros encontrados.
ERROR_COUNTER—Número de ficheros que no se han podido leer.

Tables

Tablas internas que se pasan o se devuelven (TABLES).

ParámetroTipoDescripción
DIR_LISTObligatorioEPSFILILista de ficheros: nombre, tamaño, fecha…

Excepciones

Errores que devuelve en sy-subrc, en el bloque EXCEPTIONS.

ExcepciónCuándo se produce
INVALID_EPS_SUBDIRDirectorio no válido.
NO_AUTHORIZATIONSin autorización.
READ_DIRECTORY_FAILEDNo se ha podido leer el directorio.
EMPTY_DIRECTORY_LISTNo hay ficheros que cumplan la máscara.

Ejemplo

ABAP
DATA lt_ficheros TYPE STANDARD TABLE OF epsfili.

CALL FUNCTION 'EPS_GET_DIRECTORY_LISTING'
  EXPORTING
    dir_name               = '/interfaces/entrada'
    file_mask              = '*.csv'
  TABLES
    dir_list               = lt_ficheros
  EXCEPTIONS
    invalid_eps_subdir     = 1
    no_authorization       = 2
    read_directory_failed  = 3
    empty_directory_list   = 4
    OTHERS                 = 5.
CASE sy-subrc.
  WHEN 0.
    LOOP AT lt_ficheros INTO DATA(ls_fichero).
      " … procesar ls_fichero-name con OPEN DATASET …
    ENDLOOP.
  WHEN 4.
    MESSAGE 'No hay ficheros pendientes' TYPE 'S'.
  WHEN OTHERS.
    MESSAGE |Error al leer el directorio ({ sy-subrc })| TYPE 'E'.
ENDCASE.

Errores y excepciones habituales

  • EMPTY_DIRECTORY_LIST: no es un error grave; simplemente no hay ficheros que cumplan la máscara.
  • NO_AUTHORIZATION: falta S_DATASET o el directorio no está permitido en la transacción FILE.

Relacionadas

Funciones relacionadas

EPS_DELETE_FILEF4_DXFILENAME_TOPRECURSIONFILE_GET_NAME

Más en Subidas y bajadas de ficheros

WS_DOWNLOADWS_UPLOADTABLE_EXPORT_TO_MSACCESSWS_EXCELALSM_EXCEL_TO_INTERNAL_TABLEGUI_DOWNLOADGUI_UPLOADGUI_DELETE_FILE

Transacciones y tablas

AL11SE37

En abap.es

¿Dudas con esta función?

Pregunta en el foro de abap.es: la comunidad lleva años resolviendo dudas de ABAP en español.

Preguntar en el foro

Actualizado: 21 de octubre de 2026