✒️ABAP Los archivos en el servidor y las sentencias OPEN y READ
ABAP Los archivos en el servidor y las sentencias OPEN y READ
- Archivos en Servidor. Sentencias OPEN y READ
- Tratamiento de archivos en el servidor
En un ambiente real de trabajo, es común la utilización de un servidor de aplicaciones para trabajar con archivos.
Las principales sentencias para el manejo de archivos en el servidor de aplicaciones son:
- OPEN DATASET: Para la apertura de archivos del servidor.
- READ DATASET: Para la lectura de archivos del servidor.
- TRANSFER: Para transferir datos de archivos al servidor.
- DELETE: Para borrar archivos del servidor.
- CLOSE: Para cerrar archivos del servidor.
Transacción AL11: Sirve para acceder a los directorios de SAP del servidor e incluso abrir los archivos.
- Apertura de archivos en el servidor
OPEN DATASET: OPEN DATASET <archivo> FOR <access> IN <mode>.
Si la apertura se realizó correctamente el SY-SUBRC será 0. Caso contrario, será 8.
El directorio y el nombre del archivo pueden ingresarse con un literal entre comillas o una variable. Si no ingresamos el directorio entonces el sistema intentará abrir el archivo en el directorio que corre el servidor de aplicaciones.
Para abrir un archivo para lectura utilizamos la cláusula FOR INPUT: OPEN DATASET <archivo> FOR INPUT IN TEXT <MODE>
Si el archivo existe el SY-SUBRC tendrá 0 si no será 8. Si el archivo existe y está abierto, el sistema posicionará al comienzo del archivo.
Para abrir un archivo para escritura usamos la cláusula FOR OUTPUT: OPEN DATASET <archivo> FOR OUTPUT IN TEXT <MODE>
Si el archivo no existe, se creará automáticamente. Si existe pero está cerrado el contenido será sobrescrito. Si existe y esta abierto el sistema se posicionará al comienzo del archivo. Si se abre correctamente, el SY-SUBRC será 0, sino será 8.
Si queremos abrir un archivo para agregar información, usamos la cláusula FOR APPENDING: OPEN DATASET <archivo> FOR APPENDING IN TEXT <MODE>.
Si el archivo no existe se creará. Si existe pero está cerrado, el sistema lo abrirá y se posicionará al final del mismo. Si existe y está abierto, el sistema se posicionará al final del archivo. Siempre el SY-SUBRC será 0.
Modos de apertura:
MODO TEXTO: Se debe de utilizar la cláusula IN TEXT MODE: OPEN DATASET <archivo> FOR <ACCESS> IN TEXT MODE ENCODING DEFAULT.
Si leemos o escribimos en un archivo que se ha abierto en modo texto, la info es transferida línea a línea. Al usar el modo texto debemos agregar la palabra reservada ENCODING DEFAULT.
MODO BINARIO: Se debe de utilizar la cláusula IN BINARY MODE. OPEN DATASET <archivo> FOR <ACCESS> IN BINARY MODE.
Si leemos o escribimos en un archivo que ha sido abierto en modo binario, la info es transferida byte a byte.
- Lectura de archivos del servidor
READ DATASET: READ DATASET <archivo> INTO <estructura>.
Para determinar en que variable debemos almacenar los datos que leeremos el archivo, debemos conocer la estructura del archivo que leeremos. Si la lectura se hizo correctamente, entonces SY-SUBRC será 0. Sino, será 8.
 
 
 
Sobre el autor
Publicación académica de Sandra Erika Bernabe Abreu, en su ámbito de estudios para la Carrera Consultor ABAP.
Sandra Erika Bernabe Abreu
Profesión: Ingeniería en Sistemas Computacionales - Mexico - Legajo: EW68S
✒️Autor de: 58 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Sandra Bernabe