BAPI_ACC_DOCUMENT_POST 解决原因代码输入问题-利用BADI
2017-04-21 07:55
447 查看
(1) 复制函数SAMPLE_INTERFACE_RWBAPI01为Z SAMPLE_INTERFACE_RWBAPI01
只是测试,所以我只针对我的用户有效。
(2) FIBF业务交易事件设置
菜单栏
设置-》处理函数模块-》SAP的一个应用程序
修改视图 每处理界面的应用函数模块:总览
处理 Ctr 应用 函数模块
CACS3003 IS-CS CACS_HR_FIND_EMPLOYEE
CACS8001 EA-ICM CACS_SAP00_PRC_8001
RWBABI01 ZSAMPLE_INTERFACE_RWBAPI01
(3) 程序调用BAPI: BAPI_ACC_DOCUMENT_POST
(4) 查看运行结果
(5) 1
*"---------------------------------------------------------------------- *"*"Local interface: *" TABLES *" IT_ACCIT STRUCTURE ACCIT *" IT_ACCCR STRUCTURE ACCCR *" RETURN STRUCTURE BAPIRET2 *" EXTENSION STRUCTURE BAPIACEXTC *" IT_ACCWT STRUCTURE ACCIT_WT *" CHANGING *" VALUE(DOCUMENT_HEADER) LIKE ACCHD STRUCTURE ACCHD *"---------------------------------------------------------------------- if sy-uname = 'ZHANGDQ'. LOOP AT EXTENSION. loop at IT_ACCIT . IT_ACCIT-RSTGR = EXTENSION-FIELD1. MODIFY IT_ACCIT . endloop. ENDLOOP. endif. ENDFUNCTION.
只是测试,所以我只针对我的用户有效。
(2) FIBF业务交易事件设置
菜单栏
设置-》处理函数模块-》SAP的一个应用程序
修改视图 每处理界面的应用函数模块:总览
处理 Ctr 应用 函数模块
CACS3003 IS-CS CACS_HR_FIND_EMPLOYEE
CACS8001 EA-ICM CACS_SAP00_PRC_8001
RWBABI01 ZSAMPLE_INTERFACE_RWBAPI01
(3) 程序调用BAPI: BAPI_ACC_DOCUMENT_POST
*&---------------------------------------------------------------------* *& Report ZFR_GL_DOCUMENT *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zfr_gl_document. DATA: gt_docheader LIKE TABLE OF bapiache09 WITH HEADER LINE, gt_accountgl LIKE TABLE OF bapiacgl09 WITH HEADER LINE, gt_acccust LIKE TABLE OF bapiacar09 WITH HEADER LINE, gt_amount LIKE TABLE OF bapiaccr09 WITH HEADER LINE, gt_extension LIKE TABLE OF bapiacextc WITH HEADER LINE, gt_return LIKE TABLE OF bapiret2 WITH HEADER LINE. DATA: gv_post_doc LIKE bapiache09-obj_key. PERFORM fill_header. * Fill in gl PERFORM fill_gl. PERFORM fill_amount. gt_EXTENSION-FIELD1 = 'A01'. APPEND gt_EXTENSION. CLEAR gt_EXTENSION. CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK' EXPORTING documentheader = gt_docheader TABLES accountgl = gt_accountgl currencyamount = gt_amount extension1 = gt_extension return = gt_return. READ TABLE gt_return WITH KEY type = 'E'. IF sy-subrc <> 0. CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST' EXPORTING documentheader = gt_docheader IMPORTING obj_key = gv_post_doc TABLES accountgl = gt_accountgl currencyamount = gt_amount" accountpayable = gt_accpay EXTENSION1 = gt_EXTENSION return = gt_return. COMMIT WORK AND WAIT. WRITE: 'Posting Document: ', gv_post_doc. ELSE. WRITE: 'Error!'. ENDIF. *&---------------------------------------------------------------------* *& Form fill_header *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM fill_header . CLEAR gt_docheader. gt_docheader-doc_date = sy-datum. gt_docheader-pstng_date = sy-datum. * gt_docheader-obj_type = 'IDOC'. * gt_docheader-obj_key = '$'. * gt_docheader-obj_sys = 'BGS1'. gt_docheader-bus_act = 'RFBU'. gt_docheader-username = sy-uname. gt_docheader-header_txt = 'Header Text'. gt_docheader-ref_doc_no = 'Reference Doc No'. gt_docheader-comp_code = '1100'. gt_docheader-doc_type = 'SA'. APPEND gt_docheader. ENDFORM. " fill_header *&---------------------------------------------------------------------* *& Form fill_amount *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM fill_amount . gt_amount-itemno_acc = '1'. gt_amount-currency = 'RMB'. gt_amount-amt_doccur = 10. APPEND gt_amount. gt_amount-itemno_acc = '2'. gt_amount-currency = 'RMB'. gt_amount-amt_doccur = -10. APPEND gt_amount. ENDFORM. " fill_amount *&---------------------------------------------------------------------* *& Form fill_gl *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM fill_gl . CLEAR gt_accountgl. gt_accountgl-gl_account = '1001010000'. gt_accountgl-itemno_acc = '1'. gt_accountgl-item_text = 'Item Text'. gt_accountgl-bus_area = ''. gt_accountgl-profit_ctr = ''. gt_accountgl-costcenter = ''. gt_accountgl-comp_code = '1100'. gt_accountgl-alloc_nmbr = '456'. gt_accountgl-COSTCENTER = '1020120300'. APPEND gt_accountgl. CLEAR gt_accountgl. gt_accountgl-gl_account = '1001010000'. gt_accountgl-itemno_acc = '2'. gt_accountgl-item_text = 'Item Text'. gt_accountgl-bus_area = ''. gt_accountgl-profit_ctr = ''. gt_accountgl-costcenter = ''. gt_accountgl-comp_code = '1100'. gt_accountgl-alloc_nmbr = '789'. gt_accountgl-COSTCENTER = '1020120300'. APPEND gt_accountgl. CLEAR gt_accountgl. ENDFORM. " fill_gl
(4) 查看运行结果
(5) 1
相关文章推荐
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- BADI增强BAPI-BAPI_ACC_DOCUMENT_POST增加字段
- SVN利用post-commit hooks自动同步代码到生产环境,解决大数量文件更新同步问题
- 使用BAPI_ACC_DOCUMENT_POST 与 BADI_ACC_DOCUMENT 创建固定资产凭证
- 使用BAPI_ACC_DOCUMENT_POST,创建会计凭证,用BADI扩展字段
- 使用BAPI_ACC_DOCUMENT_POST,创建会计凭证,用BADI扩展字段
- 使用BAPI_ACC_DOCUMENT_POST,创建会计凭证,用BADI扩展字段(转)
- FB01:Accounting: Posting:“BAPI_ACC_DOCUMENT_POST”
- 利用feof()函数复制文件的C代码(解决复制后文件多一字符的问题)
- 资产取得传票传入数量 BAPI_ACC_DOCUMENT_POST
- Andorid编程心得-利用代码解决Android WIFI休眠后连接断开的问题
- BAPI_ACC_DOCUMENT_POST 过账固定资产凭证
- perl输入,排序,输出,一行代码解决所有的问题
- 解决MyEclipse编辑jsp输入.死机、代码提示死机问题
- BAPI_ACC_DOCUMENT_POST,如何处理没有的参数传入系统
- 共享问题还没解决,依然利用下网络~~IRI中的输入己输出对比!
- BAPI_ACC_MANUAL_ALLOC_POST 费用分配函数的小bug及解决办法
- 解决MyEclipse编辑jsp输入.死机、代码提示死机问题
- BAPI_ACC_DOCUMENT_POST
- 使用Ibatis生成的代码日期中没有时分秒的问题原因和解决办法