二维码

[BAPI] 销售订单删除接口BAPI_SALESORDER_CHANGE

Twilight发表于 2018-09-19 16:12Twilight 最后回复于 2018-09-19 16:12 [复制链接] 3577 0

  1. FUNCTION zsdfm001_delete.
  2. *"----------------------------------------------------------------------
  3. *"*"本地接口
  4. *"  IMPORTING
  5. *"     VALUE(I_VBELN) TYPE  VBELN_VA OPTIONAL
  6. *"  EXPORTING
  7. *"     VALUE(E_MESSAGE) TYPE  ZOTS001
  8. *"----------------------------------------------------------------------
  9.   DATA:BEGIN OF ls_vbak,
  10.          vbeln TYPE vbak-vbeln,
  11.        END OF ls_vbak.
  12.   DATA:lt_return TYPE TABLE OF bapiret2 WITH HEADER LINE.
  13.   DATA:ls_order_header_inx TYPE bapisdh1x.

  14.   IF i_vbeln IS NOT INITIAL.
  15.     PERFORM frm_inputsap_data CHANGING i_vbeln.
  16.     SELECT SINGLE vbeln INTO ls_vbak FROM vbak WHERE vbeln = i_vbeln.
  17.     IF sy-subrc NE 0.
  18.       e_message-type = 'S'.
  19.       e_message-message = '没有符合条件数据'.
  20.       EXIT.
  21.     ENDIF.
  22.   ELSE.
  23.     e_message-type = 'E'.
  24.     e_message-message = '输入条件不能全为空'.
  25.     EXIT.
  26.   ENDIF.

  27.   CHECK e_message-type NE 'E'.

  28.   ls_order_header_inx-updateflag = 'D'."删除标识
  29.   CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
  30.     EXPORTING
  31.       salesdocument    = i_vbeln
  32.       order_header_inx = ls_order_header_inx
  33.     TABLES
  34.       return           = lt_return.

  35.   LOOP AT lt_return WHERE type CA 'AEX'.
  36.     IF e_message-message IS INITIAL.
  37.       e_message-message   = lt_return-message.
  38.     ELSE.
  39.       e_message-message = e_message-message && '.' && lt_return-message.
  40.     ENDIF.
  41.   ENDLOOP.
  42.   IF sy-subrc = 0.
  43.     CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK' .

  44.     e_message-type  = 'E'.
  45.   ELSE.
  46.     CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
  47.       EXPORTING
  48.         wait = 'X'.

  49.     e_message-type    = 'S'.
  50.     e_message-message = '订单删除成功'.
  51.   ENDIF.

  52. ENDFUNCTION.
复制代码
硬删除,直接删除数据
回复

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表