您的位置:首页 > 其它

SAP凭证冲销BAPI用法

2013-01-16 17:40 351 查看
①BAPI_ACC_DOCUMENT_REV_CHECK会计凭证冲销前检查------------------------------------
REPORT RODERICK.

TABLES: BKPF.
DATA P_BUKRS TYPE BUKRS VALUE '9900'.
DATA P_BELNR TYPE BSEG-BELNR VALUE '0100000335'.
DATA P_GJAHR TYPE BSEG-GJAHR VALUE '2011'.
DATA P_BUDAT TYPE BKPF-BUDAT VALUE '20110126'.
DATA:P_AWKEY TYPE AWKEY.
DATA P_SUBRC TYPE SY-SUBRC.

DATA: W_BELNR TYPE BELNR_D,
W_REVERSAL TYPE BAPIACREV,
WT_RETURN TYPE STANDARD TABLE OF BAPIRET2,
WA_RETURN TYPE BAPIRET2.

CLEAR P_SUBRC.

SELECT SINGLE * FROM BKPF
WHERE BUKRS EQ P_BUKRS AND BELNR EQ P_BELNR
AND GJAHR EQ P_GJAHR.
*
CHECK BKPF-BLART = 'SA'.
SY-UNAME = BKPF-USNAM.
* CONCATENATE W_BELNR P_BUKRS P_GJAHR INTO W_REVERSAL-OBJ_KEY.
W_REVERSAL-OBJ_TYPE = BKPF-AWTYP.
CONCATENATE P_BELNR P_BUKRS P_GJAHR INTO W_REVERSAL-OBJ_KEY_R.
W_REVERSAL-OBJ_KEY = W_REVERSAL-OBJ_KEY_R.
W_REVERSAL-OBJ_KEY = '$'.

CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
OWN_LOGICAL_SYSTEM = W_REVERSAL-OBJ_SYS
EXCEPTIONS
OWN_LOGICAL_SYSTEM_NOT_DEFINED = 1
OTHERS = 2.

W_REVERSAL-REASON_REV = '01'.
W_REVERSAL-PSTNG_DATE = P_BUDAT.

CALL FUNCTION 'BAPI_ACC_DOCUMENT_REV_CHECK'
EXPORTING
REVERSAL = W_REVERSAL
BUS_ACT = 'RFBU'
TABLES
RETURN = WT_RETURN.

BREAK-POINT.

LOOP AT WT_RETURN INTO WA_RETURN WHERE TYPE CA 'EA'.
P_SUBRC = 4.
EXIT.
ENDLOOP.

②BAPI_ACC_DOCUMENT_REV_POST会计凭证冲销-------------------------------------
REPORT RODERICK.

TABLES: BKPF.
DATA P_BUKRS TYPE BUKRS VALUE '9900'.
DATA P_BELNR TYPE BSEG-BELNR VALUE '0100000335'.
DATA P_GJAHR TYPE BSEG-GJAHR VALUE '2011'.
DATA P_BUDAT TYPE BKPF-BUDAT VALUE '20110126'.
DATA P_AWKEY TYPE AWKEY.
DATA P_SUBRC TYPE SY-SUBRC.

DATA: W_BELNR TYPE BELNR_D,
W_REVERSAL TYPE BAPIACREV,
WT_RETURN TYPE STANDARD TABLE OF BAPIRET2,
WA_RETURN TYPE BAPIRET2.

CLEAR P_SUBRC.

SELECT SINGLE * FROM BKPF
WHERE BUKRS EQ P_BUKRS AND BELNR EQ P_BELNR
AND GJAHR EQ P_GJAHR.
*
CHECK BKPF-BLART = 'SA'.
SY-UNAME = BKPF-USNAM.
* CONCATENATE W_BELNR P_BUKRS P_GJAHR INTO W_REVERSAL-OBJ_KEY.
W_REVERSAL-OBJ_TYPE = BKPF-AWTYP.
CONCATENATE P_BELNR P_BUKRS P_GJAHR INTO W_REVERSAL-OBJ_KEY_R.
W_REVERSAL-OBJ_KEY = W_REVERSAL-OBJ_KEY_R.
W_REVERSAL-OBJ_KEY = '$'.

CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
OWN_LOGICAL_SYSTEM = W_REVERSAL-OBJ_SYS
EXCEPTIONS
OWN_LOGICAL_SYSTEM_NOT_DEFINED = 1
OTHERS = 2.

W_REVERSAL-REASON_REV = '01'.
W_REVERSAL-PSTNG_DATE = P_BUDAT.

CALL FUNCTION 'BAPI_ACC_DOCUMENT_REV_POST'
EXPORTING
REVERSAL = W_REVERSAL BUS_ACT = 'RFBU'
IMPORTING
* OBJ_TYPE =
OBJ_KEY = P_AWKEY
* OBJ_SYS =
TABLES
RETURN = WT_RETURN.
LOOP AT WT_RETURN INTO WA_RETURN WHERE TYPE CA ‘EA’.
P_SUBRC = 4.
EXIT.
ENDLOOP.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: