Foro de programación ABAP

SAP / ABAP => Programación ABAP => Mensaje iniciado por: molaci en 02 de Abril de 2008, 04:01:05 pm

Título: Diferencia entre CALL y LEAVE
Publicado por: molaci en 02 de Abril de 2008, 04:01:05 pm
Hola, tengo una duda.

Que diferencia hay en poner CALL TRANSACTION 'XXXX'. y LEAVE TO TRANSACTION 'XXXX'.

Gracias.   ???
Título: Re: Diferencia entre CALL y LEAVE
Publicado por: Carlos en 02 de Abril de 2008, 05:28:18 pm
El CALL TRANSACTION lo que hace es ir y volver.

Y el LEAVE TO TRANSACTION solo va. (no vuelve)

Título: Re: Diferencia entre CALL y LEAVE
Publicado por: abapconsultoria en 03 de Abril de 2008, 06:49:37 pm
El tema esta en las sesiones(internas/Externas). Con el Leave "Pisa" todo el contenido de tu sesion externa y ejecuta la transaccion que le indicas en una nueva sesion interna. Con el Call tenes la posibilidad de poner "AND RETURN" esto habilita la posibilidad de volver al programa que lo invoco porque la sesion interna(que lo invoco) es mantenida en memoria y se abre una nueva sesion interna para tratar la nueva trs que estas invocando. Espero que te sea de utilidad .

Saludos.

Javier Morales
Título: Re: Diferencia entre CALL y LEAVE
Publicado por: molaci en 03 de Abril de 2008, 07:00:06 pm
Muchísimas gracias a los dos.

Ha sido de gran ayuda.