有時候在更新銷售訂單抬頭的時候,需要根據抬頭的字段來修改行項目的值。
增強點在程序MV45AFZZ里的FORM:userexit_save_document_prepare。代碼如下圖所示:
DATA: LS_YVBAP LIKE YVBAP.
IF SY-TCODE = 'VA02'. "當修改的時候
LOOP AT XVBAP.
IF XVBAP-UPDKZ EQ SPACE.
* Save unchanged version of xvbap to yvbap
LS_YVBAP = XVBAP.
APPEND LS_YVBAP TO YVBAP.
XVBAP-UPDKZ = CHARU.
UPD_VBAP = CHARU.
ENDIF.
XVBAP-GSBER = VBAK-ZGSBER.
MODIFY XVBAP.
ENDLOOP.
ENDIF.
IF SY-TCODE <> 'VA03'.
LOOP AT XVBAP.
XVBAP-GSBER = VBAK-ZGSBER.
MODIFY XVBAP.
ENDLOOP.
ENDIF.
