|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Chequeo de bloqueo de reserva y pedido de traslado para ejecutar BAPI
Hola amigos. Busqué algún tema anterior, pero no encontré, así que acá vamos.
Tenemos un reporte Z que ejecuta la BAPI_GOODSMVT_CREATE, dentro de un loop, pero en algunos registros falla ya que queda bloqueado el pedido de traslado por el registro anterior (bloqueado por el mismo usuario). Después de la BAPI se ejecuta la BAPI_TRANSACTION_COMMIT con el parámetro WAIT = C_X, así que no es un problema de la BAPI, sino de que queda "colgado" todavía el pedido. Y no queda bloqueada la tabla entera (p. ej., EKKO o EKPO), sino sólo ÉSE pedido. Lo que necesitaría saber es cómo chequear si el pedido está bloqueado antes de ejecutar la BAPI. Si está bloqueado por otro usuario, saltarlo; y si es por el mismo, esperar a que se desbloquee. ¿Saben cómo hacerlo? Después me pasa lo mismo con la misma BAPI pero al tratar reservas. Espero haberme explicado. Desde ya, gracias, y saludos a todos. Emanuel |
#2
|
|||
|
|||
Hola,
Intenta usando la siguiente sentencia abap, despues de hacer el commit: WAIT UP TO XX SECONDS. |
#3
|
|||
|
|||
Gracias, pero eso no me sirve, ya que el pedido o reserva puede estar siendo bloqueado por otro usuario.... Ahora estoy usando ENQUEUE_EMEKKOS y ENQUEUE_EMRKPF, pero el tema es que si detecta un bloqueo salta al ALV, no permite el tratamiento del error... |
#4
|
|||
|
|||
Ayuda Con Bapi
Me pidieron realizar cargas masivas..con BAPI
por favor necesito un manual paso a paso |
#5
|
|||
|
|||
Ya nos dimos cuenta, jaja |
#6
|
|||
|
|||
Listo, resuelto. Lo que hice fue copiar las funciones ENQUEUE_EMEKKOS y ENQUEUE_EMRKPF (todo el grupo de funciones en realidad), y en cada una de ellas (los nuevos zetas), eliminar el mensaje de error ante un bloqueo, dejando solo la variable para poder manipular el registro en cuestión.
Saludos..... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|