限制特定仓储类型的组件不产生TR

当时处理此问题时,自己的思路有了问题。在通过bapi,增强无法实现时,应该扩展下自己的思路,考虑下与订单组件有关的一些表里是否有这些字段,应该以目的为导向。

名称

限制特定仓储类型的组件不产生TR

 

  更新日期

200900629

整理人

应用

 

开发

史振强

简述

对于某种仓储类型的生产订单组件,通过LP10创建TR时,不显示。即:不会产生相应的转储需求。

涉及表(TABLE

Resb

涉及函数FUNCTION

 

前台查看方法

 

LP10

业务关键点

 

ABAP

实现

1,  对于符合条件的组件,通过预留号,项目,手工把预留里的待装运标记更新为0(与WM层管理无关)即可。具体实现代码如下

   Data: begin of it_mara occurs 0,
           matnr 
like mara-matnr,
           glass_flag,
        
end    of it_mara.
FORM update_resb_berkz  USING   p_rsnum
                                p_rspos
                                p_matnr.
  
DATA:l_ltkza LIKE mlgn-ltkza.
  
READ TABLE it_mara WITH KEY matnr = p_matnr.
  
IF sy-subrc <> 0.
    
SELECT SINGLE ltkza
    
INTO l_ltkza
    
FROM mlgn
    
WHERE matnr = p_matnr  AND
          lvorm = 
''       AND
          ltkza 
IN ('R01','R02').
    
IF sy-subrc = 0.
      
UPDATE resb SET berkz = '0'
                  
WHERE rsnum = p_rsnum AND
                        rspos = p_rspos.
      
IF sy-subrc = 0.
        
COMMIT WORK AND WAIT.
      
ENDIF.
      it_mara-matnr = p_matnr.
      it_mara-glass_flag = 
'X'.
      
COLLECT it_mara.
      
CLEAR:it_mara.
    
ELSE.
      it_mara-matnr = p_matnr.
      
COLLECT it_mara.
      
CLEAR:it_mara.
    
ENDIF.
  
ELSE.

    IF it_mara-glass_flag = 'X'.
      
UPDATE resb SET berkz = '0'
                  
WHERE rsnum = p_rsnum AND
                        rspos = p_rspos.
      
IF sy-subrc = 0.
        
COMMIT WORK AND WAIT.
      
ENDIF.
    
ENDIF.
  
ENDIF.
ENDFORM.  

ABAP

实现



 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值