✒️ABAP Los archivos en el servidor y las sentencias OPEN y READ
ABAP Los archivos en el servidor y las sentencias OPEN y READ
Los archivos en el servidor y las sentencias OPEN y READ
El tratamiento de archivos en el servidor
En un ambiente real de trabajo de SAP es común la utilización de un servidor de aplicaciones para trabajar con archivos.
En ocasiones los archivos que generan los procesos que se ejecutan en el sistema SAP son muy pesados, por lo que no sería posible almacenarlos en las computadoras locales.
ABAP dispone de una serie de sentencias para el tratamiento de archivos ubicados en el servidor de aplicaciones.
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.
Apertura de archivos en el servidor
Utilizaremos la sentencia OPEN DATASET para la apertura de archivos. Su sintaxis es:
OPEN DATASET <archivo> FOR <ACCESS> IN <MODE>.
Si la apertura del archivo se realizó correctamente, entonces la variable del sistema SY-SUBRC será 0. Caso contrario, será 8.
En <archivo> especificaremos el nombre del archivo junto con el directorio en donde se encuentra. Esta información puede ingresarse como un literal entre comillas o en una variable. Si no ingresamos el directorio en donde se encuentra el archivo y solo ingresamos el nombre del archivo entonces el sistema intentará abrir el archivo en el directorio en el que se ejecuta el servidor de aplicaciones.
Si deseamos abrir un archivo para lectura, debemos utilizar la cláusula FOR INPUT
OPEN DATASET <archivo> FOR INPUT IN TEXT <MODE>.
El archivo que se intenta abrir debe existir. Caso contrario, la variable del sistema SY-SUBRC será 8. Si el archivo existe y está abierto, el sistema se posicionará al comienzo del archivo.
Es recomendable cerrar todos los archivos que ya están abiertos antes de realizar una reapertura con la sentencia OPEN DATASET.
Si deseamos abrir un archivo para escritura, debemos utilizar la cláusula FOR OUTPUT tal como vemos aquí:
OPEN DATASET <archivo> FOR OUTPUT IN TEXT <MODE>.
Si el archivo no existe se creará automáticamente.
Si el archivo existe pero está cerrado el contenido será sobrescrito.
Si el archivo existe y está abierto, el sistema se posicionará al comienzo del archivo.
Si la apertura del archivo se realiza correctamente, entonces la variable del sistema SY-SUBRC será 0, de lo contrario 8.
Si deseamos abrir un archivo para agregar información, debemos utilizar la cláusula FOR APPENDING
OPEN DATASET <archivo> FOR APPENDING IN TEXT <MODE>.
Si el archivo no existe, se creará automáticamente.
Si el archivo existe pero está cerrado, el sistema lo abrirá y se posicionará al final del mismo.
Si el archivo existe y está abierto, el sistema se posicionará al final del archivo.
En todos los casos anteriores la variable del sistema SY-SUBRC será 0.
Si leemos o escribimos en un archivo que ha sido abierto en modo texto entonces la información es transferida línea a línea.
Si utilizamos el modo texto debemos agregar la palabra reservada ENCODING DEFAULT.
MODO BINARIO
Para abrir un archivo en el servidor de aplicaciones de SAP en modo binario, debemos utilizar la cláusula IN BINARY MODE como vemos a continuación:
OPEN DATASET <archivo> FOR <ACCESS> IN BINARY MODE.
Si leemos o escribimos en un archivo que ha sido abierto en modo binario entonces la información es transferida byte a byte.
La lectura de archivos del servidor
Utilizaremos la sentencia READ DATASET para la lectura de archivos del servidor de aplicaciones de SAP. La sintaxis de la sentencia es la siguiente:
READ DATASET <archivo> INTO <estructura>.
Para determinar en qué variable debemos almacenar los datos que leeremos del archivo, debemos conocer la estructura del archivo que leeremos.
Si la lectura se realizó correctamente, entonces la variable del sistema SY-SUBRC será 0. De lo contrario, será 8.
 
 
 
Sobre el autor
Publicación académica de Ariel Martucci, en su ámbito de estudios para la Carrera Consultor ABAP.
Ariel Martucci
Profesión: Contador Publico - Argentina - Legajo: PJ45S
✒️Autor de: 78 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Un contador público de mediana edad con ganas de seguir aprendiendo carreras nuevas. estudiante avanzado de inglés, preparando mi first certificate, y al mismo tiempo involucrándome en programación.
Certificación Académica de Ariel Martucci