SAP系统中,最初很重要的是会计凭证。而在后勤模块中,息息相关的就是物料凭证。
为了定制各种规则,我们可以对物料凭证进行增强处理。
Tcode MIGO SE19, badi ENHANCEMENT MB_CHECK_LINE_BADI,
Method:CHECK_LINE.
Purpose:在使用migo收货过账的时候,检查物料无标准成本不允许过账
SE19写入BADI MB_CHECK_LINE_BADI的方法CHECK_LINE。
详细的代码如下:
METHOD if_ex_mb_check_line_badi~check_line.
TYPES: BEGIN OF ty_ckmlpr,
pprdl TYPE ckmlpr-pprdl, kalkl’ TYPE ckmlpr-kalkl. lplpr TYPE ckmlpr-lplpr, END OF ty_ckmlpr.
DATA: wa_ckmlpr TYPE ty_ckmlpr.
SELECT SINGLE pprdl
kalkl lplpr
INTO wa_ckmlpr FROM ckmlpr
WHERE kalnr IN ( SELECT kaln1
FROM mbew
WHERE matnr=is_mseg-matr
AND bwkey=is_mseg-werks AND vprsv =’S’ ).
IF sy subrc EQ O.
IF wa_cknlpr-kalkl =’’OR wa_ckmlpr-lplpr IS INITIAL.
IF sytcode(2)=’B’
MESSAGE a001(ZMM_MSG) WITH is_mseg-matnr. ELSE.
MESSAGE e001(ZMM_MSG) WITH is_mseg-matnr.
ENDIF.
ENDIF.
ENDIF.
ENDMETHOD.
看完这个代码,是不是可以举一反三多次触发呢?
原理就是这个check的方法,可以各种校验检查。记得多测试哦~
我的微信公众号【 hot583 】 或者在这个链接联系我
本文链接 :http://www.hot583.com/2022/07/28/mb_check_line_badi
本文为作者原创,如果这篇文章对您有用,欢迎转载,
转载请务必注明来源《今日热点在看》http://www.hot583.com/
微信原文《全文完》