MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 04/12/13, 16:25:31
Eduesqueda Eduesqueda is offline
Senior Member
 
Fecha de Ingreso: dic 2008
Localización: San Nicolás, México
Mensajes: 103
Duda Sencilla De Bapis??

Hola a todos, espero y alguien me pueda ayudar.

Ejecuto mi programa con la misma BAPI dos veces, una vez después de la otra pero con diferente gm_code=03 para la transacción MB1A (salidas) y gm_code=05 para la transacción MB1C (entradas).

La bapi es BAPI_GOODSMVT_CREATE.

El problema es que me pide un COMMIT WORK cuando termina la primera llamada (MB1A) y empieza la segunda (MB1C). Me dice que no puedo llamar por 2da. vez a la bapi sin hacer un commit.

Entonces pongo el commit en medio de las llamadas y entonces graba el documento de salida (MB1A) que lo veo con la transacción MB03.

Sin embargo lo que yo quiero es que si la segunda llamada(MB1C) da error estoy haciendo un roll back a la bapi que se llamo por 2da. vez por lo que no me genera este nuevo y 2do. documento lo cuál es correcto....pero no me hace el roll back para la primera vez que llamé a la bapi (MB1A) ya que le di un commit por lo que no me borra este nuevo y primer documento con el roll back de la 2da. llamada.

Como puedo validar esto? Es decir: si la misma bapi da error en la 2da. llamada que no me genere ningún documento ni el de la primer llamada ni el de la segunda (este yo ya se como controlarlo). Que me de un roll back en casada hacia arriba (desde la 2da. llamada y también la 1ra. llamada).


Saludos
Gracias

HELP!! HELP!!
__________________
Saludos
Alabado Seas Yhavé.
-Hay Un Mundo Mejor Cuando Aprendes a AMAR
Responder Con Cita
  #2  
Viejo 30/12/13, 08:21:11
chivi82 chivi82 is offline
Member
 
Fecha de Ingreso: mar 2006
Mensajes: 64
Bapi

Hola,

Como solución te recomiendo ejecutar la BAPI dos veces en modo test (parámetro TESTRUN = 'X'). Con esto el sistema realizará las comprobaciones pertinentes sin llegar a crear ningún documento. Resumiendo:

Ejecutar BAPI con datos A en modo test.
Ejecutar BAPI con datos B en modo test.
Si todo ok:
Ejecutar BAPI con datos A en modo real.
Ejecutar BAPI con datos B en modo real.

Espero haberte ayudado.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 21:55:23.


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