前台工艺路线组件自动分配

*&---------------------------------------------------------------------*
*& Report  ZPP_CA02
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

前提,BOM中的排序字符串中的值和工艺路线中工序的标准文本码相同

report  zpp_ca02.
tables mara .
tables marc.
data i_mapl like table of mapl with header line.
data subrc type sy-subrc.
data messtab like  bdcmsgcoll occurs 0.
data wa_messatab like bdcmsgcoll.
data: matnr_001 type bdcdata-fval.
data: werks_002 type bdcdata-fval.
data: p_model type c.
data: w_msg(200) type c.

data: begin of i_matnr occurs 0,
    matnr like marc-matnr,
    werks like marc-werks,
    end of i_matnr.


select-options s_matnr for mara-matnr.
select-options s_werks for marc-werks obligatory.
parameters  p_model1 type c radiobutton group r1.
parameters  p_model2 type c radiobutton group r1.
parameters  p_tag type c as checkbox.

 


start-of-selection.
  clear i_mapl[].
  clear i_matnr[].

  select distinct matnr werks
  into corresponding fields of table i_mapl "UP TO 10 ROWS
  from mapl
  where matnr in s_matnr and werks in s_werks and loekz = space.

  select matnr werks
  into corresponding fields of table i_matnr
  from marc
  where matnr in s_matnr and werks in s_werks.

 

 

  if p_model1 eq 'X'.
    p_model = 'N'.
  else.
    p_model = 'A'.
  endif.

  if lines( i_mapl )     write '没有工艺存在' color col_negative.
    exit.
  endif.

  loop at i_matnr.
    clear w_msg.
    read table i_mapl with key matnr = i_matnr-matnr werks = i_matnr-werks.
    if sy-subrc ne 0.
      concatenate '物料:' i_matnr-matnr+9(9) '在工厂:'  i_matnr-werks '没有工艺路线' INTO w_msg.
      write w_msg color col_negative.
      skip.

    endif.
  endloop.

  clear w_msg.

  loop at i_mapl.

    matnr_001 = i_mapl-matnr.

    werks_002 = i_mapl-werks.

 

    call function 'ZCA02'
     exporting
*   CTU                 = 'X'
     mode                = p_model
*   UPDATE              = 'L'
*   GROUP               = GROUP
*   USER                = USER
*   KEEP                = KEEP
*   HOLDDATE            = HOLDDATE
*   NODATA              = '/'
       matnr_001           = matnr_001
       werks_002           = werks_002
*   PLNNR_003           = '10008203'
*   STTAG_004           = '2010.11.08'
*   PLNAL_005           = ''
*   ENTRY_ACT_006       = '1'
*   SORTF_007           = 'X'
*   SORTF_008           = 'ai'
*   VORNR_009           = '0010'
*   PLNFL_010           = '0'
*   SORTF_011           = 'X'
*   SORTF_012           = 'dip'
*   VORNR_013           = '0020'
*   PLNFL_014           = '0'
     p_tag = p_tag
     importing
       subrc               = subrc
   tables
     messtab             = messtab
              .

  endloop.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值