PDA

Ver la Versión Completa : Badi con job de Fondo


CHEPO
11/03/10, 14:34:35
Buenas,

Quisiera saber si alguien me puede ayudar, ya que tengo una BADI que cuando se ejecuta la trx normalmente funciona, pero cuando la ejecuto como proceso de job de fondo esta no para , alguien sabe como debo hacer para que pare tambein?, saludos y gracias de antemano.

ballan
11/03/10, 16:34:10
1) Tienes que poner un bucle infinito antes de donde quieras debugear, en tu caso seria dentro de la badi aqui debajo te dejo codigo de ejemplo

Data: lv value 'X'.
do.
if lv is initial.
exit.
endif.
enddo.

2) Realizas el proceso

3) Vas a la transaccion SM50 y observaras que hay un proceso que esta pillado (es tu proceso que esta en un bucle infinito)

4) Seleccionas el proceso y le das al menu Programa/Modo seleccionas Programa->Debugear

5) Se te abrira el debuger, luego tan solo tienes que poner el valor de la variable LV en blanco para que salga del bucle infinito y puedas continuar debugeando tu codigo

CHEPO
11/03/10, 16:53:05
Gracias pero lo que necesito es saber como hacer que el proceso de fondo pare con la Badi ya que a esta le metimos codigo y cuando ejecuto la trx normalmente para en esta pero cuando le ejecuto como job no, saludos y gracias.

ballan
11/03/10, 17:11:11
Mira esta explicacion a lo mejor no es muy ortodoxa pero es para entendernos

Cuando tu ejecutas algo en fondo significa que en lugar d ejecutarse en local en tu PC, se va a ejecutar en el servidor

Cuando tu pones un break point lo pones en local en tu PC

Por lo tanto un proceso que corra en el servidor JAMAS se va a detener por un break point que pongamos en local en nuestro ordenador

Por eso te he dicho lo que tienes que hacer, poner un bucle infinito y mirar el proceso en la SM50, esta es la unica manera de la que podras debugear algo que corre en fondo, por cuando tu ejecutas algo en fondo se esta ejecutando en el servidor, no en tu maquina local, por lo que pierdes el control

CHEPO
12/03/10, 11:26:25
Muchas Gracias, un abrazo.