CO02工单组件,新增/删除/修改

&---------------------------------------------------------------------
*& Form FRM_CHANGE_AUFRN
&---------------------------------------------------------------------

  •   调整工单
    

----------------------------------------------------------------------
FORM frm_change_aufrn .

DATA:lt_return TYPE STANDARD TABLE OF bapiret2.
DATA:ls_return TYPE bapiret2.
DATA lv_error TYPE c.
DATA lv_msg TYPE char100.
DATA:ls_resb_d TYPE resb.
DATA:ls_resb_i TYPE resb.
DATA:ls_resb_m TYPE resb.

"删除组件
DATA:lt_resb_d TYPE TABLE OF resb.
DATA:lt_resb_i TYPE TABLE OF resb.
DATA:lt_resb_m TYPE TABLE OF resb.
DATA it_resb_d TYPE coxt_t_resbdel.

"新增组件
DATA: ls_storage_location TYPE coxt_s_storage_location,
ls_storage_locationx TYPE coxt_s_storage_locationx,
ls_requ_quan TYPE coxt_s_quantity,
lv_operation TYPE co_aplzl,
lv_positionno TYPE positionno,
lv_numc TYPE numc4.
"新增组件-重新刷新订单行号使用
TYPES: BEGIN OF ty_resb_bt.
INCLUDE TYPE resbb.
TYPES: indold TYPE syst_tabix.
TYPES: no_req_upd TYPE syst_datar.
TYPES: END OF ty_resb_bt.
TYPES tt_resb_bt TYPE TABLE OF ty_resb_bt.
FIELD-SYMBOLS: <ft_resb_bt> TYPE tt_resb_bt,
<fs_resb_bt> TYPE ty_resb_bt.

*—修改生产订单组件定义
DATA:ls_order_key TYPE coxt_ord_key,
ls_order_component_key TYPE coxt_s_ord_comp_key,
ls_requirement_quantity TYPE coxt_s_quantity,
ls_requirement_quantityx TYPE coxt_s_quantityx,
ls_confirmed_quantity TYPE coxt_s_quantity,
ls_confirmed_quantityx TYPE coxt_s_quantityx,
lv_material TYPE coxt_material,
lv_materialx TYPE coxt_materialx,

  •   ls_storage_location         TYPE coxt_s_storage_location,
    
  •   ls_storage_locationx        TYPE coxt_s_storage_locationx,
     lv_batch                    TYPE coxt_batch,
     lv_batchx                   TYPE coxt_batchx,
     lv_mi_configuration_object  TYPE coxt_config_object,
     lv_mi_configuration_objectx TYPE coxt_config_objectx,
     lv_error_occurred           TYPE c.
    

    DATA:lt_resb_get LIKE TABLE OF resbdget,
    ls_resb_get LIKE resbdget.

    DATA lt_ztpplsbgb_d TYPE STANDARD TABLE OF ztpplsbgb.
    DATA lt_ztpplsbgb_i TYPE STANDARD TABLE OF ztpplsbgb.
    DATA lt_ztpplsbgb_m TYPE STANDARD TABLE OF ztpplsbgb.
    DATA lt_ztpplsbgb_t TYPE STANDARD TABLE OF ztpplsbgb.
    DATA lt_ztpplsbgb_s TYPE STANDARD TABLE OF ztpplsbgb.

    DATA:lv_menge TYPE ztpplsbgb-menge.
    DATA:lv_text TYPE string.

    MOVE-CORRESPONDING gt_ztpplsbgb[] TO lt_ztpplsbgb_d[].
    MOVE-CORRESPONDING gt_ztpplsbgb[] TO lt_ztpplsbgb_i[].
    MOVE-CORRESPONDING gt_ztpplsbgb[] TO lt_ztpplsbgb_m[].
    MOVE-CORRESPONDING gt_ztpplsbgb[] TO lt_ztpplsbgb_t[].

    SORT lt_ztpplsbgb_d BY werks z_matnr1 z_matnr2 zsczj.
    DELETE lt_ztpplsbgb_d WHERE zsczj IS INITIAL.

    SORT lt_ztpplsbgb_i BY werks z_matnr1 z_matnr3 zxzbs.
    DELETE lt_ztpplsbgb_i WHERE zxzbs IS INITIAL.

    SORT lt_ztpplsbgb_m BY werks z_matnr1 z_matnr2 zylxg.
    DELETE lt_ztpplsbgb_m WHERE zylxg IS INITIAL .

    SORT lt_ztpplsbgb_t BY werks z_matnr1 z_matnr2 zylxg.
    DELETE lt_ztpplsbgb_t WHERE zthbs IS INITIAL .

    "取占用数量使用
    MOVE-CORRESPONDING lt_ztpplsbgb_t[] TO lt_ztpplsbgb_s[].
    SORT lt_ztpplsbgb_s BY z_matnr1 z_matnr2.
    DELETE ADJACENT DUPLICATES FROM lt_ztpplsbgb_s COMPARING z_matnr1 z_matnr2.

    LOOP AT gt_alv INTO gs_alv WHERE zbox = ‘X’
    AND icon <> icon_led_green.

    CLEAR gs_alv-icon.

    "拣配单冻结状态 =X ,则报错“选择工单清单中有冻结工单”
    IF gs_alv-zdjzt = ‘X’.
    gs_alv-msg = ‘选择工单清单中有冻结工单’.
    gs_alv-icon = icon_led_red.
    MODIFY gt_alv FROM gs_alv.
    CLEAR g

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

放弃幻想_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值