#1
|
|||
|
|||
Guardar Excel con OLE en la AL11
Hola amigos una vez mas necesito de su ayuda y de sus conocimientos.
He creado un excel ole usando CREATE OBJECT e_appl 'EXCEL.APPLICATION'. y ya lo he llenado con lo que necesito pero mi primer tarea que debo hacer es el de guardarlo en el servidor de aplicaciones en un directorio de la AL11 pero no he encontrado como. El método CALL METHOD OF e_work 'SAVEAS' solo lo guarda en directorios de la maquina local no en el servidor de aplicaciones. Alguien ha realizado esto antes, necesito ayuda por favor.
__________________
Francisco Ramirez. consultor SAP ABAP Netweaver Queretaro, Mexico. |
#2
|
|||
|
|||
Estimado guarde su archivo al disco local y luego use la función
C13_FILE_UPLOAD_BINARY: ejemplo CALL FUNCTION 'C13Z_FILE_UPLOAD_BINARY' EXPORTING I_FILE_FRONT_END = 'C:\Users\pepito\Desktop\pagos.xlsx' I_FILE_APPL = '/DES/batch/S390/pagos.xlsx' I_FILE_OVERWRITE = '' IMPORTING E_FLG_OPEN_ERROR = L_FLG_OPEN_ERROR E_OS_MESSAGE = L_OS_MESSAGE EXCEPTIONS FE_FILE_NOT_EXISTS = 1 FE_FILE_READ_ERROR = 2 AP_NO_AUTHORITY = 3 AP_FILE_OPEN_ERROR = 4 AP_FILE_EXISTS = 5 OTHERS = 6. Lo tomé desde la transacción CG3Z asi que debería andar bien. Saludos Úlima edición por Mauricio Hidalgo fecha: 09/07/13 a las 19:58:49. |
#3
|
|||
|
|||
Gracias Mauricio lo estaba pensando asi, igual ya estaba pensando en la funcion ARCHIVFILE_CLIENT_TO_SERVER osea guardarlo en localmente y el mismo porgrama se encargue de subir el archivo del fichero local al servidor de aplicaciones y borre el archivo local al terminar, solo que me voy a enfrentar a varios escenarios:
El Programa sera ejecutado por varias personas entonces ellos deben de verlo muy transparente, no quisiera que tronara con algun usuario si no tiene la unidad C (bueno creo que deberia de existir sin problemas), pero si no tiene permisos de escritura en el directorio o demas problemas. Al momento con la ruta que he pensado con la que voy a jugar esperando que en las computadoras exista es: C:\TEMP. Por esto queria hacerlo directamente sin usar un archivo local. o tendria que realizar funciones de validación de directorios, ¿como ven?. Gracias por la información. Saludos.
__________________
Francisco Ramirez. consultor SAP ABAP Netweaver Queretaro, Mexico. |
#4
|
|||
|
|||
Te comento las opciones que se me ocurren
1.- Mapear a las personas que vayan a utilizar este programa la carpeta donde quieres depositar los ficheros como unidad de red, asi podran seleccionarla en el cuadro de SAVEAS del Excel, esto es bastante limpio y te ahorrarias mucho codigo 2.- El resto de opciones pasan por descargar el fichero a local y despues enviarlo a servidor, ya sea mediante FTP, con la funcion de la CG3Z o incluso leer el contenido y subirlo al servidor mediante un OPEN DATASET BINARY MODE |
#5
|
|||
|
|||
Gracias Ballan las 2 opciones suenan bien solo que la primera es un poco dificil por que quieren ejecutarla personas diferentes que no se pueden especificar en una lista y quieren que entre menos se haga desde SAP sera mejor (configurar carpetas RED, etc) así que voy a trabajar la segunda opcion y voy a realizar un muestreo de los usuarios de que carpeta es base en C y los permisos para escritura / lectura desde SAP.
Saludos.
__________________
Francisco Ramirez. consultor SAP ABAP Netweaver Queretaro, Mexico. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|