生产工单收货控制增强

本文介绍了ABAP程序员如何通过增强控制解决生产工单收货时遇到的问题,包括未报工收货、无投料产出和贵重物料投料控制。通过CMod引入出口增强点,对不同情况进行判断并实现相应的控制逻辑,确保业务流程的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于生产工单完工收货(migo+101),我作为ABAP人员通过对日常业务了解。总结以下几种情况可以通过增强方式进行控制。

1、收货时未报工。

2、未投料就有产出。

3、在全部收货时判断贵重A类物料是否按工单组件要求进行投料(A类物料需要在主数据MRP视图中设置)。

具体开发部署如下:

1、通过CMOD事务代码,引入出口增强。增强点如下。

2、收货时未报工的代码。

    DATA:TMPOBJNR TYPE aufk-objnr.

    DATA:i_jest LIKE jest OCCURS  WITH HEADER LINE .

  IF  i_mseg-aufnr IS NOT INITIAL AND  i_mseg-bwart '101' AND i_mseg-ebeln IS INITIAL .

      SELECT SINGLE
         aufk~objnr
        INTO TMPOBJNR
        FROM AUFK
        WHERE AUFK~AUFNR i_mseg-AUFNR AND AUFK~WERKS i_mseg-WERKS.

          SELECT *  FROM jest
            INTO CORRESPONDING FIELDS OF TABLE i_jest
            WHERE objnr TMPOBJNR.
            SORT i_jest .
            DELETE i_jest WHERE  stat <> 'I0009' AND inact space or inact 'X'.
            IF i_jest[] is INITIAL.
                  MESSAGE '报工未完成,无法收最后一次货!' TYPE 'I'.
            ENDIF.

ENDIF

3、未投料就有产出

 IF  i_mseg-aufnr IS NOT INITIAL AND  i_mseg-bwart '101' AND i_mseg-ebeln IS INITIAL .

    SELECT  AUFNR MBLNR BUDAT BWART RSNUM R

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值