1
Programación ABAP / Re: BAPI_SALESORDER_CHANGE
« en: 03 de Febrero de 2011, 07:26:55 pm »
Para borrar los pedidos necesitas la BAPI 'BAPI_SALESORDER_CHANGE'
E_ORDERM-sd_doc_cat = 'C'. "Tipo de Documento Comercial
E_ORDERMX-UPDATEFLAG = 'D'. " La 'D' nos indica que es de borrado
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
SALESDOCUMENT = V_VBELN "Aqui se inserta el numero del documento a borrar
ORDER_HEADER_IN = E_ORDERM
ORDER_HEADER_INX = E_ORDERMX
behave_when_error = 'P'
TABLES
RETURN = RETURN_MO.
READ TABLE RETURN_CO WITH KEY TYPE = 'E'. "Se ven los mensajes de tipo 'E' (Error)
IF SY-SUBRC EQ 0.
MESSAGE E000(ZSD) WITH RETURN_CO-MESSAGE+0(20)
RETURN_CO-MESSAGE+20(20)
RETURN_CO-MESSAGE+40(20).
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'. "Si no hay mensajes de error se guardan cambios
MESSAGE S000(ZSD) WITH 'Se Borro el Pedido ' V_VBELN.
ENDIF.
E_ORDERM-sd_doc_cat = 'C'. "Tipo de Documento Comercial
E_ORDERMX-UPDATEFLAG = 'D'. " La 'D' nos indica que es de borrado
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
SALESDOCUMENT = V_VBELN "Aqui se inserta el numero del documento a borrar
ORDER_HEADER_IN = E_ORDERM
ORDER_HEADER_INX = E_ORDERMX
behave_when_error = 'P'
TABLES
RETURN = RETURN_MO.
READ TABLE RETURN_CO WITH KEY TYPE = 'E'. "Se ven los mensajes de tipo 'E' (Error)
IF SY-SUBRC EQ 0.
MESSAGE E000(ZSD) WITH RETURN_CO-MESSAGE+0(20)
RETURN_CO-MESSAGE+20(20)
RETURN_CO-MESSAGE+40(20).
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'. "Si no hay mensajes de error se guardan cambios
MESSAGE S000(ZSD) WITH 'Se Borro el Pedido ' V_VBELN.
ENDIF.