Estamos seguros de que en algún momento se os ha presentado esta problemática. Lanzamos algún proceso en SAP, y el resultado es un fichero almacenado en algún directorio del servidor. O por contra necesitamos dejar un fichero en el servidor para poder procesarlo desde SAP. Y casi siempre tenemos el mismo problema: no contamos con acceso directo al servidor, ya sea escritorio remoto, ftp, carpeta compartida, o similares.
No os preocupéis, a continuación os explicamos como poder esquivar estas dificultades.
Notas: Partiremos de la base de que tenéis autorizaciones suficientes en SAP para poder lanzar estas transacciones/reports. En caso negativo, será necesario que lo tratéis con vuestros admins más cercanos 😛
Aclarar también que no se podrán cargar/descargar ficheros de directorios a los que usuarios que la instalación de SAP lleva por detrás (sidadm y SAPServiceSID) no tengan acceso a nivel de Sistema Operativo.
Solución 1
Módulos de funciones ARCHIVFILE_CLIENT_TO_SERVER y ARCHIVFILE_SERVER_TO_CLIENT
La descarga/carga de ficheros desde/hacia nuestro servidor SAP es tan sencillo como entrar en la transacción SE37 y ejecutar el módulo de fuciones ARCHIVFILE_SERVER_TO_CLIENT o ARCHIVFILE_CLIENT_TO_SERVER. Con la primera función transferimos el fichero del servidor a nuestro equipo local, y con la segunda el traspaso se realiza desde el equipo local hacia el propio servidor.
Pongamos el ejemplo de que queremos descargar desde el servidor SAP el fichero zprueba.txt albergado en el directorio /usr/sap/tmp
Ejecutamos el módulo de funciones ARCHIVFILE_SERVER_TO_CLIENT y completamos los campos de selección con los siguientes datos:
Hay que tener en cuenta marcar el flag de mayúsculas y minúsculas cuando nos encontremos en entornos Linux/Unix, y escribir adecuadamente todas las letras para que la ejecución sea correcta.
El campo path representa la ruta absoluta hacia el fichero que queremos descargar dentro del servidor, y el campo targetpath la ruta absoluta de nuestro equipo donde queremos depositar el fichero. Ejecutamos con F8 y verificamos que ya contamos con el fichero en nuestro equipo.
En versiones antiguas, podemos encontrar los siguientes módulos de función con similar funcionalidad: C13Z_FILE_DOWNLOAD_ASCII, C13Z_FILE_DOWNLOAD_BINARY, C13Z_FILE_UPLOAD_ASCII y C13Z_FILE_UPLOAD_BINARY.
Solución 2
Report CACS_FILE_COPY.
Mediante este programa podremos también transferir ficheros desde/hacia el servidor SAP. En el primer bloque de selección le indicamos el origen de la transferencia: servidor → cliente GUI o cliente GUI → servidor, y en el segundo bloque le indicaremos las rutas absolutas del origen del fichero y del destino donde queremos almacenarlo. Siguiendo con los datos del ejemplo anterior:
Solución 3
Transacciones CG3Y y CG3Z.
Estas transacciones tienen un funcionamiento similar y sirven para la descarga y carga de ficheros respectivamente. Es necesario especificar las rutas absolutas origen y destino del fichero, el formato, sea ASCII o binario, y la posibilidad de sobrescribir el archivo en caso de que exista.
Solución 4
Exportar el contenido como una lista sencilla.
Si podemos visualizar el contenido del fichero, por ejemplo en la transacción AL11, podemos descargarlo a fichero desde el menú del SAPGui con la siguiente opción: Menú superior → Sistema → Lista → Grabar → Fichero Local
Esta opción permite descargar el contenido en diferentes formatos, como texto enriquecido, sin formato, texto con tabuladores para hojas de cálculo, e incluso formato html.