
Introducción:
Aprende a trabajar con archivos almacenados en el servidor de aplicaciones SAP usando sentencias ABAP como OPEN DATASET, READ DATASET, y TRANSFER. ¡Esencial para procesos batch y manejo de grandes volúmenes de datos!
1 ¿Por qué Archivos en el Servidor?
Casos de uso clave:
-
Integración entre sistemas: Salida de un proceso = Entrada de otro.
-
Archivos pesados: Evita límites de almacenamiento local (ej: informes de 1GB+).
-
Acceso centralizado: Carpetas compartidas para múltiples usuarios/equipos.
Sentencias ABAP críticas:
Sentencia Función
| OPEN DATASET |
Abre archivos (lectura/escritura/append) |
| READ DATASET |
Lee datos del archivo |
| TRANSFER |
Escribe datos en el archivo |
| DELETE DATASET |
Elimina archivos |
| CLOSE DATASET |
Cierra archivos abiertos |
2 Apertura de Archivos (OPEN DATASET)
Sintaxis básica:

Modos de Apertura:
Modo Descripción SY-SUBRC
| INPUT |
Lectura (archivo debe existir). |
0=Éxito, 8=Error |
| OUTPUT |
Escritura (sobrescribe si existe, crea si no). |
0=Éxito |
| APPENDING |
Agregar datos al final (crea si no existe). |
Siempre 0 |
Tipos de Acceso:
Tipo Uso
| TEXT |
Lee/escribe línea por línea (ej: CSV). |
| BINARY |
Lee/escribe byte a byte (ej: imágenes). |
Ejemplos:

Importante:
3 Lectura de Archivos (READ DATASET)
Sintaxis:

Comportamiento:
Ejemplo (texto):

4 Escritura de Archivos (TRANSFER)
Sintaxis:

Ejemplos:

5 Cierre y Eliminación
Cerrar archivos:

Eliminar archivos:

Errores Comunes y Soluciones
Error Causa Solución
| SY-SUBRC = 8 en OPEN |
Archivo no existe (en INPUT) |
Validar ruta antes de abrir. |
| Datos corruptos en binario |
Longitud incorrecta |
Usar LENGTH al definir variables. |
| Bloqueos de archivo |
No cerrar después de usar |
Incluir CLOSE DATASET en FINALLY. |
Conclusión
-
Takeaway principal:
"Usa OPEN DATASET, READ DATASET y TRANSFER para manejar archivos en el servidor SAP: centralizados, seguros y sin límites de tamaño."
-
Flujo seguro:
-
Abrir (OPEN DATASET).
-
Leer/Escribir (READ DATASET/TRANSFER).
-
Cerrar (CLOSE DATASET).
Términos técnicos:
OPEN DATASET, READ DATASET, TRANSFER, DELETE DATASET, CLOSE DATASET, SY-SUBRC, TEXT MODE, BINARY MODE.
¡Consejo final!
Usa rutinas de validación de rutas con FILE_GET_NAME para evitar errores.