前台操作截圖如下:
如下是查看數據:
數據可以在BSEG表查一下
代碼實現如下:
*--------------------------------------------------------------------* * INTERNAL TABLE DECLARATION *--------------------------------------------------------------------* DATA: it_blntab TYPE TABLE OF blntab WITH HEADER LINE, it_ftclear TYPE TABLE OF ftclear WITH HEADER LINE, it_ftpost TYPE TABLE OF ftpost WITH HEADER LINE, it_fttax TYPE TABLE OF fttax WITH HEADER LINE. *--------------------------------------------------------------------* * START-OF-SELECTION *--------------------------------------------------------------------* START-OF-SELECTION. DEFINE populate_ftpost. it_ftpost-stype = &1. it_ftpost-count = &2. it_ftpost-fnam = &3. it_ftpost-fval = &4. append it_ftpost. END-OF-DEFINITION. DEFINE populate_ftclear. it_ftclear-agkoa = 'D'. it_ftclear-agbuk = '3010'. "company code it_ftclear-selfd = 'BELNR'. it_ftclear-xnops = 'X'. it_ftclear-selvon = &1. "下限
*******it_ftclear-selbis = &2. "上限 感覺沒用 append it_ftclear. END-OF-DEFINITION. CALL FUNCTION 'POSTING_INTERFACE_START' EXPORTING i_function = 'C' i_keep = 'X' i_mode = 'A' EXCEPTIONS client_incorrect = 1 function_invalid = 2 group_name_missing = 3 mode_invalid = 4 update_invalid = 5 OTHERS = 6. populate_ftpost: 'K' 1 'BKPF-BUKRS' '3010', "Company code 'K' 1 'BKPF-BLART' 'SA', "憑證類型 'K' 1 'BKPF-BLDAT' sy-datum, "憑證日期 'K' 1 'BKPF-BUDAT' sy-datum, "過賬日期 'K' 1 'BKPF-WAERS' 'CNY', "幣別 'K' 1 'BKPF-XBLNR' 'Test', "參考 'K' 1 'BKPF-BKTXT' '抬頭文本', "參考 'P' 1 'RF05A-NEWBS' '40', "過賬碼 'P' 1 'RF05A-NEWKO' '1002001001', "科目 銀行科目 'P' 1 'BSEG-WRBTR' '119.25', "金額 'P' 1 'BSEG-RSTGR' 'A01', "付款原因代碼 'P' 1 'BSEG-HBKID' 'A1002', "開戶行短代碼 'P' 1 'BSEG-HKTID' 'HQ005'. "帳戶細目的代碼 populate_ftclear '18000001162021001'. "concatenate doc number + fiscal year + line number "憑證號+年度+項次
*******populate_ftclear '18000001102021001'.
*******populate_ftclear '18000001152021001'. CALL FUNCTION 'POSTING_INTERFACE_CLEARING' EXPORTING i_auglv = 'EINGZAHL' i_tcode = 'FB05' i_sgfunct = 'C' IMPORTING e_msgid = sy-msgid e_msgno = sy-msgno e_msgty = sy-msgty e_msgv1 = sy-msgv1 e_msgv2 = sy-msgv2 e_msgv3 = sy-msgv3 e_msgv4 = sy-msgv4 * E_SUBRC = SY-SUBRC TABLES t_blntab = it_blntab t_ftclear = it_ftclear t_ftpost = it_ftpost t_fttax = it_fttax EXCEPTIONS clearing_procedure_invalid = 1 clearing_procedure_missing = 2 table_t041a_empty = 3 transaction_code_invalid = 4 amount_format_error = 5 too_many_line_items = 6 company_code_invalid = 7 screen_not_found = 8 no_authorization = 9 OTHERS = 10. IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. DATA:lv_str TYPE string. CALL FUNCTION 'MESSAGE_TEXT_BUILD' EXPORTING msgid = sy-msgid msgnr = sy-msgno MSGV1 = sy-msgv1 MSGV2 = sy-msgv2 MSGV3 = sy-msgv3 MSGV4 = sy-msgv4 IMPORTING MESSAGE_TEXT_OUTPUT = lv_str. . MESSAGE lv_str TYPE 'E'. CALL FUNCTION 'POSTING_INTERFACE_END' EXCEPTIONS session_not_processable = 1 OTHERS = 2. ******* 沖銷清賬T-CODE:FBRA ******* 沖銷清賬憑證用如下BAPI * J_1B_FBRA_POSTING_AUFRUFEN