Ir al contenido
Programación ABAP

WS_DOWNLOAD

Graba una tabla interna en un fichero del PC. Obsoleta: usa GUI_DOWNLOAD.

Módulo de funciónSubidas y bajadas de ficherosObsoleta
Transacción
SE37
Grupo
Subidas y bajadas de ficheros
Actualizado
21 de octubre de 2026

Función obsoleta. Usa GUI_DOWNLOAD o, en clases, CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD. Consulta la ficha de GUI_DOWNLOAD. Tienes el ejemplo moderno más abajo.

Para qué sirve

WS_DOWNLOAD fue durante años la forma de grabar una tabla interna en el ordenador del usuario. Desde SAP R/3 4.6 está obsoleta y se sustituye por GUI_DOWNLOAD o por el método CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD.

Sigue apareciendo en programas antiguos; en sistemas Unicode puede dar problemas con los caracteres especiales, así que conviene cambiarla al tocar esos programas.

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
FILENAMEObligatorio—Ruta del fichero en el PC.
FILETYPE—'ASC', 'BIN', 'DAT' (separado por tabuladores) o 'WK1'.Por defecto: 'ASC'
MODE—'A' para añadir al final del fichero.

Tables

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

ParámetroTipoDescripción
DATA_TABObligatorioTabla estándarDatos que se graban.

Excepciones

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

ExcepciónCuándo se produce
FILE_OPEN_ERRORNo se puede crear el fichero.
FILE_WRITE_ERRORError al escribir.
INVALID_TYPEFILETYPE no válido.
NO_BATCHLlamada desde un job de fondo.
UNKNOWN_ERRORError no clasificado.

Ejemplo

ABAP
" Código antiguo (no lo uses en desarrollos nuevos)
CALL FUNCTION 'WS_DOWNLOAD'
  EXPORTING
    filename         = 'C:\temp\datos.txt'
    filetype         = 'DAT'
  TABLES
    data_tab         = lt_datos
  EXCEPTIONS
    file_open_error  = 1
    file_write_error = 2
    OTHERS           = 3.

Hoy lo harías así: GUI_DOWNLOAD

Ahora
CALL FUNCTION 'GUI_DOWNLOAD'
  EXPORTING
    filename              = 'C:\temp\datos.txt'
    filetype              = 'ASC'
    write_field_separator = 'X'      " equivale al antiguo 'DAT'
    codepage              = '4110'
  TABLES
    data_tab              = lt_datos
  EXCEPTIONS
    OTHERS                = 1.

Errores y excepciones habituales

  • Caracteres extraños en sistemas Unicode: WS_DOWNLOAD no gestiona bien la codificación; cámbiala por GUI_DOWNLOAD con CODEPAGE.
  • NO_BATCH: no funciona en fondo; usa OPEN DATASET.

Relacionadas

Funciones relacionadas

GUI_DOWNLOADWS_UPLOAD

Más en Subidas y bajadas de ficheros

TABLE_EXPORT_TO_MSACCESSWS_EXCELALSM_EXCEL_TO_INTERNAL_TABLEGUI_UPLOADGUI_DELETE_FILEEPS_DELETE_FILEEPS_GET_DIRECTORY_LISTING

Transacciones y tablas

SE37

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