✒️ABAP Los archivos en el servidor y las sentencias TRANSFER, DELETE y CLOSE
ABAP Los archivos en el servidor y las sentencias TRANSFER, DELETE y CLOSE
Transferencia de archivos al servidor:
--------------------------------------------------------------------------------------------
Utilizamos TRANSFER.
--------------------------------------------------------------------------------------------
Estructura:
TRANSFER <estructura> TO <archivo>.
--------------------------------------------------------------------------------------------
El modo en que se realiza la transferencia de información se corresponde con el modo de apertura del archivo.
Si el archivo no está abierto para escritura, el sistema intentará abrirlo en BINARY MODE o utilizando la última ejecución de la sentencia OPEN DATASET.
--------------------------------------------------------------------------------------------
Ejemplo:
OPEN DATASET p_path FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
IF sy-subrc NE 0.
MESSAGE s000(z_prueba) WITH text-004.
ELSE.
* Transfiero los datos al fichero
st_archivo-dni = '27654315'.
st_archivo-nombre_ape = 'Ricardo Alvarez'.
st_archivo-estado_usu = 'A'.
st_archivo-direccion = 'Lavallol 1454'.
st_archivo-codigo_postal = '1568'.
st_archivo-f_nacimiento = '19781097'.
st_archivo-estado_civil = 'S'.
TRANSFER st_archivo TO p_path.
--------------------------------------------------------------------------------------------
Con la transacción CG3Y vamos a poder copiar un archivo alojado en el servidor en nuestra computadora.
Basta con pasar la ruta completa de origen y la de destino.
Y elegir el formato de transferencia que puede ser ASC o BIN.
--------------------------------------------------------------------------------------------
Borrado de archivos del servidor:
--------------------------------------------------------------------------------------------
Utilizamos DELETE DATASET.
--------------------------------------------------------------------------------------------
Estructura:
DELETE DATASET <archivo>.
--------------------------------------------------------------------------------------------
Para borrarlo, previamente debemos abrirlo.
Si el borrado se realiza correctamente SY-SUBRC será 0. Caso contrario, 4.
--------------------------------------------------------------------------------------------
Ejemplo:
IF NOT p_borrar IS INITIAL.
DELETE DATASET p_path.
ENDIF.
--------------------------------------------------------------------------------------------
Cierre de archivos del servidor:
--------------------------------------------------------------------------------------------
Utilizamos CLOSE DATASET.
Es recomendable realizar siempre el cierre de los archivos.
--------------------------------------------------------------------------------------------
Estructura:
CLOSE DATASET <archivo>.
--------------------------------------------------------------------------------------------
Ejemplo:
CLOSE DATASET p_path.
IF sy-subrc NE 0.
MESSAGE s000(z_prueba) WITH text-006.
ENDIF.
--------------------------------------------------------------------------------------------
Búsqueda de archivos en el servidor:
--------------------------------------------------------------------------------------------
Utilizamos /SAPDMC/LSM_F4_SERVER_FILE.
Crearemos una ventana de navegación en el servidor de aplicaciones para poder seleccionar el archivo que deseamos.
--------------------------------------------------------------------------------------------
Ejemplo:
DATA: vl_file(500) TYPE c.
CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
EXPORTING
directory = p_path
filemask = '*'
IMPORTING
serverfile = vl_file
EXCEPTIONS
canceled_by_user = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
MOVE vl_file TO p_path.
ENDIF.
--------------------------------------------------------------------------------------------
 
 
 
Sobre el autor
Publicación académica de Martin Alejandro Goya, en su ámbito de estudios para la Carrera Consultor ABAP.
Martin Alejandro Goya
Profesión: Ingeniero en Computacion - Argentina - Legajo: CJ13E
✒️Autor de: 49 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Martin Goya