您的位置:首页 > 其它

BAPI_ACC_GL_POSTING_REV_POST(转)

2009-06-05 23:11 836 查看
Parameters p_belnr like bkpf-belnr default '0100000236'.

*Get last SA type document posted to build document key
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
NR_RANGE_NR = '01'
OBJECT = 'RF_BELEG'

QUANTITY = '1'
SUBOBJECT = '4000' "company code
TOYEAR = '2005'

IGNORE_BUFFER = '2005'
IMPORTING
NUMBER = docnum

QUANTITY =
RETURNCODE =
EXCEPTIONS
INTERVAL_NOT_FOUND = 1
NUMBER_RANGE_NOT_INTERN = 2
OBJECT_NOT_FOUND = 3
QUANTITY_IS_0 = 4
QUANTITY_IS_NOT_1 = 5
INTERVAL_OVERFLOW = 6
BUFFER_OVERFLOW = 7
OTHERS = 8
.
IF SY-SUBRC 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

"Begin to populate docnument header.
*obj_key contains new document no.
CONCATENATE docnum '4000' sy-datlo(4) INTO doc_header-obj_key.
doc_header-obj_type = 'BKPFF'.
*obj_key_r contains document no. needed to reverse
CONCATENATE p_belnr '4000' sy-datlo(4) INTO doc_header-obj_key_r.

doc_header-obj_sys = 'A1DMD011'.
*doc_header-OBJ_KEY_R = 'AWREF_REV'.
*doc_header-AC_DOC_NO = '8'.
*doc_header-header_txt = 'TEST BOC BAPI POSTING'.
doc_header-comp_code = '4000'.
doc_header-REASON_REV = '02'.
doc_header-pstng_date = '20050517'.
doc_header-FIS_PERIOD = '05'.

"All tables filled - now call BAPI.
CALL FUNCTION 'BAPI_ACC_GL_POSTING_REV_POST'
EXPORTING
REVERSAL = doc_header
IMPORTING
OBJ_TYPE = doc_header-obj_type
OBJ_KEY = doc_header-obj_key
OBJ_SYS = doc_header-obj_sys
TABLES
RETURN = return
.

LOOP AT return WHERE type = 'E'.
EXIT.
ENDLOOP.

IF sy-subrc EQ 0.
WRITE: / 'BAPI call failed - debug and fix!'.
LOOP AT return.
WRITE: / .
WRITE:
return-TYPE,
'|',
return-ID,
'|',
return-NUMBER,
'|',
return-MESSAGE.
ENDLOOP.
ELSE.
LOOP AT return.
WRITE: / .
WRITE:
return-TYPE,
'|',
return-ID,
'|',
return-NUMBER,
'|',
return-MESSAGE.
ENDLOOP.
CLEAR return.
REFRESH return.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING
WAIT = 'X'
IMPORTING
return = return.
WRITE: / 'BAPI call worked!!'.
WRITE: / doc_header-obj_key, ' posted'.
---------------------------------------------------------------- 另外一个代码: call function 'OWN_LOGICAL_SYSTEM_GET'
importing
own_logical_system = reversal-obj_sys.[/u]

clear reversal[].

select single awtyp awkey awkey into
(reversal-obj_type, reversal-obj_key_r, reversal-obj_key)
from bkpf where belnr = wa_belnr
and bukrs = wa_bukrs
and gjahr = wa_gjahr.

reversal-obj_key(1) = 'R'.
reversal-pstng_date = p_budat.
reversal-fis_period = p_budat+4(2).
reversal-comp_code = wa_bukrs.
reversal-reason_rev = p_stgrd.
reversal-ac_doc_no = wa_belnr.
append reversal.

call function 'BAPI_ACC_DOCUMENT_REV_POST'
exporting
reversal = reversal
bus_act = 'RFBU'
importing
obj_type = obj_type
obj_key = obj_key
obj_sys = obj_sys
tables
return = p_return.

原文地址 https://www.sdn.sap.com/irj/sdn/thread?messageID=5067790#5067790
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: