最简单的过账:
FB01或者F-02
FB03查看
一般默认都是BAPI_ACC_DOCUMENT_POST
三个参数
demo代码
CLEAR: ls_acc_gl,ls_acc_cur,lt_acc_cur[],lt_acc_cur[],ls_doc_header.
ls_doc_header-header_txt =
ls_doc_header-username = sy-uname.
ls_doc_header-comp_code =
ls_doc_header-doc_date =
ls_doc_header-pstng_date =
ls_doc_header-fisc_year =
ls_doc_header-fis_period =
ls_doc_header-doc_type = 'SA'.
ls_acc_gl-item_text =
ls_acc_gl-itemno_acc = 1.
ls_acc_gl-doc_type = 'SA'.
ls_acc_gl-comp_code =
ls_acc_gl-pstng_date =
ls_acc_gl-fisc_year =
ls_acc_gl-fis_period =
ls_acc_gl-gl_account =
APPEND ls_acc_gl TO lt_acc_gl.
ls_acc_gl-itemno_acc = 2.
ls_acc_gl-gl_account =
APPEND ls_acc_gl TO lt_acc_gl.
ls_acc_cur-itemno_acc = 1.
ls_acc_cur-currency =
ls_acc_cur-amt_doccur =
APPEND ls_acc_cur TO lt_acc_cur.
ls_acc_cur-itemno_acc = 2.
ls_acc_cur-currency =
ls_acc_cur-amt_doccur =
APPEND ls_acc_cur TO lt_acc_cur.
CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK'
EXPORTING
documentheader = ls_doc_header
TABLES
accountgl = lt_acc_gl
currencyamount = lt_acc_cur
return = lt_return.
READ TABLE lt_return TRANSPORTING NO FIELDS
WITH KEY type = 'E'.
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
EXPORTING
documentheader = ls_doc_header
IMPORTING
obj_type = lv_type
obj_key = lv_key
obj_sys = lv_sys
TABLES
accountgl = lt_acc_gl
currencyamount = lt_acc_cur
return = lt_return.
下面内容可以参考博文:
http://blog.sina.com.cn/s/blog_3f2c03e30100mk24.html
有一些参数在BAPI_ACC_DOCUMENT_POST的输入和表参数中根本没有,如记账码Posting Key、原因代码Reason Code,
解决办法大体如下:
1、se11创建结构,必须包含行项目号POSNR字段,和其他需要扩展的字段,如记账码Posting Key、原因代码Reason Code
2、SE19实现BADI增强ACC_DOCUMENT,这个增强是用来将BAPI_ACC_DOCUMENT_POST参数表EXTENSION2传入系统表
3、使用BAPI_ACC_DOCUMENT_POST参数表EXTENSION2,将扩展字段传入
DATA: ACCOUNTGL TYPE STANDARD TABLE OF BAPIACGL09.
DATA: CURRENCY_AMOUNT TYPE STANDARD TABLE OF BAPIACCR09.
DATA: RETURN TYPE STANDARD TABLE OF BAPIRET2 WITH HEADER LINE.
DATA: IT_EXTENSION2 TYPE STANDARD TABLE OF BAPIPAREX WITH HEADER LINE.
DATA: WA_ZEXTEN LIKE ZEXTEN. ”ZEXTEN就是刚才SE11创建的那个结构
*& EXTENSION2 扩展字段增强部分
WA_ZEXTEN-POSNR = '0000000010'. "凭证行项目
WA_ZEXTEN-RSTGR = '171'. "凭证行项目原因代码
IT_EXTENSION2-STRUCTURE = 'ZEXTEN'.
IT_EXTENSION2-VALUEPART1 = WA_ZEXTEN.
APPEND IT_EXTENSION2.
*执行BAPI
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
EXPORTING
DOCUMENTHEADER = HEADER
TABLES
ACCOUNTGL = ACCOUNTGL
CURRENCYAMOUNT = CURRENCY_AMOUNT
RETURN = RETURN
EXTENSION2 = IT_EXTENSION2