PDA

Ver la Versión Completa : Problema usando la BAPI_TRANSACTION_COMMIT


ernestoacostacuba
23/04/09, 08:45:08
Hola a todos:

Soy un programador ABAP.
Resulta que en estos momentos estoy en medio de un progetto donde tengo que cargar en sistema los datos personales de un empleado haciendo uso de la BAPI 'HR_MAINTAIN_MASTERDATA'.
Despues de llamar esa BAPI, llamo a la BAPI_TRANSACTION_COMMIT para hacer efectiva la operaciòn, pero cuando ejecuto la transacciòn PA30, el CID del empleado no es visualizado en la lista, pero sin embargo, existe en el contenido de la tabla PA0001.
Alguno de ustedes seria gentil en decirme cuàl es la soluciòn para este problema?
Muchas gracias,

Ernesto.

marianoa
23/04/09, 15:38:51
podrias probar la secuencia de las dos funciones en la se37, hay una manera de correr las 2 funciones juntas. en este momento no tengo abierto el sistema pero trata de hacer eso para ver si los resultados estan bien, tal vez estes llamando una de las bapis

jlholguins
24/04/09, 13:22:35
Hola a todos alguien ha trabajado la bapi BAPI_CUSTOMERQUOTATION_CHANGE para modificar ofertas?
Resulta que necesito rechazar masivamente ofertas que no tengan pedido de acuerdo a un rango de fechas o rango de ofertas, y estoy utilizando esta bapi llenando los siguientes datos:
Numero de la Oferta: SALESDOCUMENT

Flags de Actualizacion campos de Encabezado: QUOTATION_HEADER_INX coloco en el campo UPDATEFLAG la letra U,

Posiciones de la Oferta: QUOTATION_ITEM_IN, lleno lo campos ITM_Number(Posicion) y REASON_REJ(Motivo de Rechazo) con el codigo del motivo.

Flags de Actualizacion campos de Posiciones: QUOTATION_ITEM_INX, Lleno los campos ITM_NUMBER(Posicion), UPDATEFLAG con la letra U y
REASON_REJ(Motivo de rechazo) con la letra X.
seguido a esto hago el llamado a la BAPI_TRANSACTION_COMMIT.
Pero no me actualiza la oferta ni las posiciones de la misma.
Alguien sabe si me falta algo.
De antemano agradezco la colaboración que puedan darme .

Tonnyman
24/04/09, 13:42:07
Luego de que ejecutes la BAPI en tu programa asegurate de pasarle al Commit lo sgte:

DATA:
ls_return LIKE bapiret2,

CONSTANTS:
gc_x TYPE boole-boole VALUE 'X',

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = gc_x
IMPORTING
return = ls_return.

Esto es, para que te puedas asegurar de que se cree el documento y continues con los demas procesos de tu programa.

Saludos.

Tonnyman
24/04/09, 14:13:15
que valor le estas pasando al parametro PERSG?

jlholguins
11/05/09, 15:19:06
HolaTonnyman, ante todo te agradezco tu respuesta, me sirvio muchisimo, el campo que me dices PERSG? donde lo encuentro lo he buscado y no lo encuentro, ya me esta funcionando la actualizacion, pero cuando la oferta tiene varias posiciones, y al tratar de actualizarlas una a una, me actualiza la primera y luego me aparece un error en las demas que dice que el documento XXXXXXXXX que es la oferta esta siend tratado por el usuario XXXXXXXXX.
Sabes como puedo solucionarlo.
De nuevo te agradezco la colaboración.