MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   COMMIT y ROLLBACK en BAPI (foro/showthread.php?t=43313)

sebapap 18/05/11 15:57:55

COMMIT y ROLLBACK en BAPI
 
Tengo el siguiente problema, necesito ejecutar 1 bapi 2 veces
(HU_CREATE_GOODS_MOVEMENT)
, si ejecuta bien la primera vez, sigo con la segunda vez, pero el problema que es necesaria ejecutar la primera, para que existan los datos para ejecutar la segunda.

1 - HU_CREATE_GOODS_MOVEMENT hago un mov 305

2 - HU_CREATE_GOODS_MOVEMENT hago un mov 344

si no hago el commit en la 1 no puedo hacer el 344 porque el stock esta en transito.

Gracias,

SAPING 18/05/11 16:39:04


Y cual seria el problema en cuestion??..
el commit no llega a guardar los datos antes de la ejecucion del 344??..
Si es ese tema prueba con un COMMIT WORK AND WAIT.

Saludos.

sebapap 18/05/11 16:56:49

Este es el escenario.
1- tengo una uma en transito.
con el mov 305 (primera bapi que se ejecuta), deja el stock en L.U.,
Si esta bapi se ejecuta bien sigo con la segunda que toma el stock L.U. y lo deja Bloq. (mov 344)
Si esta falla debo ser capaz de deshacer los cambios de la primera bapi y segunda bapi.

El problema es q si no hago un commit en la primera, la segunda me falla pq el stock no esta en L.U. y si hago el commit, con el rollback no logro deshacer los cambios de la primera bapi.

SAPING 18/05/11 17:27:07


Me mataste pa..
Si encontras la solucion publicala asi nos enteramos los que no la sabemos.

Suerte !!! Y disculpa que no te pueda ayudar.
Saludos.

mysmb2 18/05/11 19:11:19

hola, intentaste con el parametro IF_COMMIT = 'X' en vez de hacerlo por codigo?
Otra cosa que podes intentar es usar la funcion BAPI_TRANSACTION_COMMIT y BAPI_TRANSACTION_ROLLBACK.

espero te sirva.
saludos

sebapap 18/05/11 20:24:31

Hola, si uso IF_COMMIT = 'X' no me funciona el ROLLBACK.

Gracias

Garces 18/05/11 21:20:38

Prueba intentando con la bapi BAPI_GOODSMVT_CREATE en lugar de la que utilizas...
Ésta te permitirá ingresar más de un item a tu documento de material...
De repente funciona con una sola llamada a la BAPI haciendo los dos movimientos simutáneamente...
Por el momento no se me ocurre nada más...
Nos avisas

DCErick 18/05/11 23:27:57

Y ya buscaste si existe un tipo de movimiento que te deje el stock de transito a bloqueado sin tener que pasar por libre:confused:

ballan 19/05/11 10:43:04

Llamadme loco pero...

Podrias crear el primer movimiento con commit y si el segundo falla anular el primero con la MBST o BAPI_GOODSMVT_CANCEL, no?

sebapap 19/05/11 13:42:14

Busque mov para hacer el paso de bloq a transito pero no encuentro, podria hacer una copia del 303 y modificar el tipo de stock que verifica, pero no encontre donde modificar.

Se puede hacer la anulacion del nr de doc, pero no queda 100% transaccional, ya que si no funciona esta bapi, quedará con incongruencia los datos.


Husos Horarios son GMT. La hora en este momento es 08:51:06.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web