1. 程式人生 > 其它 >ABAP-刪除銷售訂單

ABAP-刪除銷售訂單

FUNCTIONzsd_fm_036.
*"----------------------------------------------------------------------
*"*"本地介面:
*"IMPORTING
*"REFERENCE(VBELN_IN)TYPEVBELN_VA
*"EXPORTING
*"REFERENCE(VBELN_OUT)TYPEVBELN_VA
*"REFERENCE(STATUS)TYPECHAR1
*"REFERENCE(MSG)TYPECHAR50
*"----------------------------------------------------------------------
DATA:ls_vbakTYPEvbak,lt_vbakTYPETABLEOFvbak.

DATA:f_headinxLIKEbapisdh1x,
t_retTYPETABLEOFbapiret2,
l_retTYPEbapiret2,
lv_vbelnTYPEbapivbeln-vbeln.

lv_vbeln=vbeln_in.
CLEAR:f_headinx.
IFlv_vbelnISNOTINITIAL.
f_headinx-updateflag='D'.

CALLFUNCTION'BAPI_SALESORDER_CHANGE'
EXPORTING
salesdocument=lv_vbeln
order_header_inx=f_headinx
TABLES
return=t_ret.

READTABLEt_retINTOl_retWITHKEYtype='S'.
IFsy-subrcEQ0.
COMMITWORKANDWAIT.
ELSE.
ROLLBACKWORK.
ENDIF.


ENDIF.

SELECTSINGLE*INTOls_vbakFROMvbakWHEREvbeln=lv_vbeln.

IFls_vbakISINITIAL.

vbeln_out=lv_vbeln.
status='S'.
msg='刪除成功!'.
ELSE.
vbeln_out=lv_vbeln.
status='E'.
LOOPATt_retINTOl_retWHEREtypeEQ'E'.
msg=msg&&l_ret-message.
ENDLOOP.

ENDIF.




ENDFUNCTION.