DATA: ls_ret TYPE bapireturn1.
IF cs_head-vbeln_vf IS INITIAL.
RETURN.
ENDIF.
SELECT SINGLE vbeln,rfbsk INTO @DATA(ls_vbrk) FROM vbrk
WHERE vbeln = @cs_head-vbeln_vf.
IF sy-subrc <> 0 OR ls_vbrk-rfbsk = 'C'.
RETURN.
ENDIF.
CALL FUNCTION 'BAPI_BILLINGDOC_CONFIRM'
EXPORTING
billingdocument = cs_head-vbeln_vf
IMPORTING
return = ls_ret.
IF ls_ret-type = 'E' OR ls_ret-type = 'A'.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
cs_head-icon = icon_red_light.
cs_head-msg = '销售发票过账失败'.
mt_ret = VALUE #( BASE mt_ret ( CORRESPONDING #( ls_ret ) ) ).
ELSE.
UPDATE zmm1000t0018 SET fltyp = mc_ivcrt aedat = sy-datum WHERE ebeln = cs_head-ebeln AND zekkn = cs_head-zekkn.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = abap_true.
cs_head-fltyp = mc_ivcrt.
cs_head-zstat = get_domain_val( cs_head-fltyp ).
cs_head-icon = icon_green_light.
cs_head-msg = '销售发票过账'.
ENDIF.
销售发票过账-BAPI_BILLINGDOC_CONFIRM
最新推荐文章于 2023-12-22 14:19:09 发布