Ver Mensaje Individual
  #5  
Viejo 07/01/10, 11:43:54
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Ya entiendo lo que dices, te digo lo que yo haria

Lo primero es probar a poner la instruccion

CL_GUI_CFW=>flush( ).

Para ver si asi te cierra el excel y lo puedes abrir

Si lo anterior no funcionara lo segundo que haria es probar a utilizar otras funciones para descargar el fichero en lugar de la WS_DOWNLOAD, dispones de la funcion GUI_DOWNLOAD y el metodo GUI_DOWNLOAD de la clase CL_GUI_FRONTEND_SERVICES que realizan la misma funcion que la WS_DOWNLOAD pero son mas modernas por lo que quiza puedan descargar el fichero y no dejar abierta la aplicacion

Si no funcionara nada de eso, la solucion que se me ocurre seria ir a nivel de procesos, hacer un pequeño script que leyera la lista de procesos, determinara el ID del proceso que tiene abierto el excel y cerrarlo, este script podrias crearlo en la tx SM49 y luego ejecutarlo con una funcion cuyo nombre no recuerdo exactamente (no tengo SAP delante) pero era algo asi como SXGP_COMMAND_EXECUTE

Para poder hacer el script en windows dispones de las siguientes instrucciones

tasklist : muestra un listado de los procesos (cada proceso tendra un ID unico)
taskkill : finaliza un proceso
Responder Con Cita