SAP 删除销售订单行
DATA: ORDER_HEADER_INX TYPE BAPISDH1X, GT_ORDER_ITEM_IN TYPE STANDARD TABLE OF BAPISDITM, LS_ORDER_ITEM_IN TYPE BAPISDITM, GT_ORDER_ITEM_INX TYPE STANDARD TABLE OF BAPISDITMX, LS_ORDER_ITEM_INX TYPE BAPISDITMX, GT_RETURN TYPE STANDARD TABLE OF BAPIRET2, LS_RETURN TYPE BAPIRET2, LV_ITM_NUMBER TYPE BAPISDITM-ITM_NUMBER, LV_UPDATEFLAG TYPE BAPISDITMX-UPDATEFLAG. LV_UPDATEFLAG = 'D'. ORDER_HEADER_INX-UPDATEFLAG = 'U'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT' "前缀补零 EXPORTING INPUT = 销售订单行号 IMPORTING OUTPUT = LV_ITM_NUMBER. LS_ORDER_ITEM_IN-ITM_NUMBER = LV_ITM_NUMBER. LS_ORDER_ITEM_INX-ITM_NUMBER = LV_ITM_NUMBER. LS_ORDER_ITEM_INX-UPDATEFLAG = LV_UPDATEFLAG. APPEND LS_ORDER_ITEM_IN TO GT_ORDER_ITEM_IN. APPEND LS_ORDER_ITEM_INX TO GT_ORDER_ITEM_INX. CALL FUNCTION 'BAPI_SALESORDER_CHANGE' EXPORTING SALESDOCUMENT = 销售订单号 ORDER_HEADER_INX = ORDER_HEADER_INX TABLES RETURN = GT_RETURN ORDER_ITEM_IN = GT_ORDER_ITEM_IN ORDER_ITEM_INX = GT_ORDER_ITEM_INX . READ TABLE GT_RETURN TRANSPORTING NO FIELDS WITH KEY TYPE = 'E'. IF SY-SUBRC = 0. CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'. EV_FLG = 'E'. LOOP AT GT_RETURN INTO LS_RETURN WHERE TYPE = 'E'. EV_MSG = |{ EV_MSG } { LS_RETURN-MESSAGE }|. CLEAR:LS_RETURN. ENDLOOP. ELSE. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'. EV_FLG = 'S'. EV_MSG = '删除成功'. ENDIF.