执行顺序:先行项目替代后完全凭证替代
区别 :F-02回车即执行行项目替代,保存凭证触发完全凭证替代 。
SAP提供了标准的替代示例:RGGBS000
行项目替代:
exits-name = 'U100'.
exits-param = c_exit_param_none.
exits-title = text-100. "Cost center from CSKS
APPEND exits.
FORM u100.
*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* PLEASE DELETE THE FIRST '*' FORM THE BEGINING OF THE FOLLOWING LINES *
* IF THE ACCOUNTING MODULE IS INSTALLED IN YOUR SYSTEM: *
* SELECT * FROM CSKS
* WHERE KOSTL EQ COBL-KOSTL
* AND KOKRS EQ COBL-KOKRS.
* IF CSKS-DATBI >= SY-DATUM AND
* CSKS-DATAB <= SY-DATUM.
*
* MOVE CSKS-ABTEI TO COBL-KOSTL.
*
* ENDIF.
* ENDSELECT.
ENDFORM.
完全凭证替代
exits-name = 'U102'.
exits-param = C_EXIT_PARAM_CLASS.
exits-title = text-100. "Cost center from CSKS
APPEND exits.
FORM u102 USING bool_data TYPE gb002_015.
DATA: SUM(10) TYPE C.
LOOP AT BOOL_DATA-BSEG INTO BSEG
WHERE SHKZG = 'S'.
BSEG-ZUONR = 'Test'.
MODIFY BOOL_DATA-BSEG FROM BSEG.
ADD BSEG-DMBTR TO SUM.
ENDLOOP.
BKPF-XBLNR = TEXT-001.
REPLACE '&' WITH SUM INTO BKPF-XBLNR.
ENDFORM.