交货冲销增强

交货冲销增强

  (2013-07-04 11:15:17)

转载▼

标签: 

sd

 

enhancement

分类: SAP_SD

交货单冲销一个小小的增强:  

 

先看需求: 在使用VL09进行交货单冲销的时候,判断冲销日期与实际发货过账的日期是否为同一天,如果不是同一天则报错。为什么要这么做,是因为为了限制客户在当期做上期的交货冲销时,避免冲减当期的成本。如果上个月的的财务账和物料帐都关了,怎么办?不好意思了,只能按退货处理。人家财务不可能为了冲一笔货,把账期给你打开。。那为什么不限制在当月,为什么要限制在发货日期当天呢? 这个问题我也问过.不是不可以啊。改下代码就OK了。

 程序出口: EXIT_SAPMM07M_001 "SAPMM07M :  货物移动的模块池



在include里面添加代码

首先看下函数里面的参数:



这样就清楚I_MKPF和I_mseg是那儿来的了。

 

 DATA i_bldat LIKE i_mkpf-bldat  .
DATA i_matnr LIKE i_mseg-matnr.
DATA wa TYPE zsd07.

" zsd07是什么?

这个是自建表,看下就明白了。




data message(60) type c.

SELECT SINGLE * FROM zsd07 INTO wa WHERE werks = i_mseg-werks  .
IF sy-subrc = 0 AND wa-flag = 'X'.
*602、654、656、658、Z04 ,
  IF  i_mseg-bwart = '602' OR i_mseg-bwart = '654'
    OR i_mseg-bwart = '656' OR i_mseg-bwart = '658'  OR i_mseg-bwart = 'Z04' "当然要限定一下Movement type了
     .
    SELECT SINGLE budat   FROM mkpf INTO i_bldat
     WHERE  mblnr = i_mseg-mblnr AND mjahr = i_mseg-mjahr .
    IF i_bldat(8) <> i_mkpf-budat(8).
      CONCATENATE '交货单号' i_mkpf-XBLNR ',取消日期与原单记帐日期不一致请检查。' INTO message.
      MESSAGE message TYPE 'E'.
    ENDIF.
  ENDIF.
  CLEAR: wa,message.
ENDIF.

 

转载于:https://www.cnblogs.com/shigs/articles/10135001.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值