FORM frm_retire_asset USING p_bukrs
p_anlnr
CHANGING p_ud_ret
p_ud_msg
p_belnr.
DATA: l_gdata TYPE bapifapo_gen_info,
l_retire TYPE bapifapo_ret,
l_info TYPE bapifapo_add_info,
l_ref TYPE bapifapo_doc_ref,
l_return TYPE bapiret2.
l_gdata-doc_type = 'AA'.
l_gdata-doc_date = g_doc_date.
l_gdata-pstng_date = g_doc_date.
* l_gdata-trans_date = g_doc_date.
l_gdata-comp_code = p_bukrs.
l_gdata-assetmaino = p_anlnr.
l_gdata-assetsubno = '0000'.
l_gdata-assettrtyp = '200'. "报废业务类型
l_retire-compl_ret = 'X'.
l_retire-valuedate = g_doc_date.
l_info-header_txt = '技改资产报废'.
l_info-item_text = '技改资产报废'.
CALL FUNCTION 'BAPI_ASSET_RETIREMENT_POST'
EXPORTING
generalpostingdata = l_gdata
retirementdata = l_retire
furtherpostingdata = l_info
IMPORTING
return = l_return.
IF l_return-type = 'S'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
p_ud_ret = c_ret_ok.
p_ud_msg = '已报废资产'.
p_belnr = l_return-message_v2.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
p_ud_ret = c_ret_fail.
p_ud_msg = l_return-message.
ENDIF.
ENDFORM. " FRM_RETIRE_ASSET