Purpose:使用TCODE:FB01直接创建凭证,或者使用TCODE:FBV0、FBV1、FBVB预制凭证时:对于客户发票凭证,
需要将50行的利润中心赋值给01行;对于客户付款凭证,需要将19行利润中心赋值给09行。
T-code: CMOD
项目:ZFI001
增强:FMRESERV
Enhancement sample code:
Function:EXIT_SAPLFMR4_002
*&—————————————————————–*
*& 包含 ZXFMCU08
*&—————————————————————–*
DATA L_ACCIT LIKE LINE OF T_ACCIT.
CLEAR L_ACCIT.
LOOP AT T_ACCIT.
*&—————————————————————*
*& 开票利润中心,将50行的利润中心赋值给01行,根据业务约定,
*& 随意一张50行赋值给所有的01行
*&—————————————————————*
IF ( SY-TCODE = ‘FB01’ “直接创建凭证
“预制凭证
OR SY-TCODE = ‘FBV0’ OR SY-TCODE = ‘FBV1’ OR SY-TCODE = ‘FBVB’ ) AND T_ACCIT-BUKRS = ‘8300’ AND T_ACCIT-BLART = ‘DR’ AND T_ACCIT-BSCHL = ’01’.
READ TABLE T_ACCIT INTO L_ACCIT WITH KEY BSCHL = ’50’.
IF L_ACCIT IS NOT INITIAL.
T_ACCIT-PRCTR = L_ACCIT-PRCTR.
CLEAR L_ACCIT.
ENDIF.
MODIFY T_ACCIT FROM T_ACCIT TRANSPORTING PRCTR PPRCTR.
ENDIF.
*&—————————————————————*
*& 将ZFI_006_08 生成的DW 凭证19行利润中心赋值给 09行
*&—————————————————————*
DATA: L_FLAG_FI00608.
“指定FI_006_08 调用生效
IMPORT FLAG = L_FLAG_FI00608 FROM MEMORY ID ‘ZFI00608’.
IF L_FLAG_FI00608 = ‘X’.
IF SY-TCODE = ‘FB01’ AND T_ACCIT-BUKRS = ‘8300’ AND T_ACCIT-BLART = ‘DW’ AND T_ACCIT-BSCHL = ’09’.
READ TABLE T_ACCIT INTO L_ACCIT WITH KEY BSCHL = ’19’.
IF L_ACCIT IS NOT INITIAL.
T_ACCIT-PRCTR = L_ACCIT-PRCTR.
CLEAR L_ACCIT.
MODIFY T_ACCIT FROM T_ACCIT TRANSPORTING PRCTR PPRCTR.
CONTINUE.
ENDIF.
ENDIF.
FREE MEMORY ID ‘ZFI00608’.
ENDIF.
ENDLOOP.
你学会了吗?
我的微信公众号【 hot583 】 或者在这个链接联系我
本文链接 :http://www.hot583.com/2022/06/22/fmreserv/
本文为作者原创,如果这篇文章对您有用,欢迎转载,
转载请务必注明来源《今日热点在看》http://www.hot583.com/
微信原文《全文完》