|
#1
|
|||
|
|||
Uso de commit work and wait
Estoy liberando ordenes de compra mediante la bapi 'BAPI_PO_RELEASE' pero cuando realiza el segundo codigo de liberación(el llamado a la bapi esta dentro de un LOOP) aparece un mensaje que mi usuario ya esta tratando esa orden de compra. Para ello, luego del llamado a la bapi le agregue el llamado a la función BAPI_TRANSACTION_COMMIT.
Al parecer el wait del commit no está funcionando o lo estoy utilizando mal. El código es este: LOOP AT REL_CODE. CALL FUNCTION 'BAPI_PO_RELEASE' EXPORTING PURCHASEORDER = NUMBER PO_REL_CODE = REL_CODE-FRGC1 USE_EXCEPTIONS = 'X' IMPORTING REL_STATUS_NEW = REL_STATUS TABLES RETURN = MESS EXCEPTIONS AUTHORITY_CHECK_FAIL = 1 RELEASE_ALREADY_POSTED = 2. IF sy-subrc EQ 0. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING wait = 'X'. CALL FUNCTION 'BAPI_PO_GETRELINFO' EXPORTING PURCHASEORDER = NUMBER. ENDIF. ENDLOOP.
__________________
--- |
#2
|
|||
|
|||
La misma BAPI_PO_RELEASE tiene un parámetro para hacer el commit. Prueba usando ese parámetro.
|
#3
|
|||
|
|||
La Bapi solo tiene 3 parámetros y nada que tenga q ver con el commit.
Se resolvio con esta sentencia: WAIT UP TO 1 SECONDS. Debido a que el delay del commit es muy corto. Gracia de igual manera
__________________
--- |
Herramientas | Buscar en Tema |
Desplegado | |
|
|