CO01/CO02生产订单组件库存地点替换

一、生产订单组件库存地点替换

当生产订单维护组件点击保存时,根据对应的工厂和工作中心,到配置表中查询对应的库存地点,并将自动带出的库存地点替换

 二、隐式增强

在函数CO_VB_ORDER_POST中添加隐式增强逻辑(此函数为异步调用)

 参考代码

"-----------------------------------------@斌将军--------------------------------------------
ENHANCEMENT 1  ZPPXXX.    "active version

READ TABLE CAUFVTA INDEX 1.
IF CAUFVTA-WERKS = 'XXXX'.
  IF AFVGTAB[] IS NOT INITIAL.
    SELECT
      OBJTY,"资源的对象类型
      OBJID,"资源的对象 ID
      ARBPL"工作中心
    FROM CRHD
    INTO TABLE @DATA(LT_CRHD)
    FOR ALL ENTRIES IN @AFVGTAB
    WHERE OBJID = @AFVGTAB-ARBID.

    IF LT_CRHD IS NOT INITIAL.
    "获取配置表对应的库存地点
      SELECT
        *
      FROM ZXXX
      INTO TABLE @DATA(LT_XBC)
      FOR ALL ENTRIES IN @LT_CRHD
      WHERE ARBPL = @LT_CRHD-ARBPL
        AND WERKS = @CAUFVTA-WERKS.

      LOOP AT RESBTAB ASSIGNING FIELD-SYMBOL(<FS_RESB>) WHERE RGEKZ = 'X'.
        READ TABLE AFVGTAB WITH KEY AUFPL = <FS_RESB>-AUFPL APLZL = <FS_RESB>-APLZL.
        IF SY-SUBRC EQ 0.
          READ TABLE LT_CRHD INTO DATA(LS_CRHD) WITH KEY OBJID = AFVGTAB-ARBID.
          IF SY-SUBRC EQ 0.
            READ TABLE LT_XBC INTO DATA(LS_XBC) WITH KEY ARBPL = LS_CRHD-ARBPL.
            IF SY-SUBRC EQ 0.
              <FS_RESB>-LGORT = LS_XBC-LGORT."库存地点
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDIF.
  ENDIF.
ENDIF.
ENDENHANCEMENT.
"-----------------------------------------@斌将军--------------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值