排除删除生产订单
...
排除删除生产订单
排除有I0076且没有I0012或I0074的订单
IF gt_out IS INITIAL.
MESSAGE '没有数据!' TYPE 'S' DISPLAY LIKE 'W'.
LEAVE LIST-PROCESSING.
ELSE.
* "add itl_zxz 20240201 "标记"状态的工单不选取
* DELETE gt_out WHERE stat = 'I0076' AND inact = '' .
SELECT jest~stat,aufk~aufnr
FROM jest
LEFT JOIN aufk
on aufk~objnr = jest~objnr
FOR ALL ENTRIES IN @gt_out
WHERE aufk~aufnr = @gt_out-aufnr
* AND stat IN ( 'I0013','I0076' )
AND inact IS INITIAL
INTO TABLE @DATA(lt_jest)
.
SORT lt_jest BY aufnr stat.
ENDIF.
LOOP AT gt_out ASSIGNING FIELD-SYMBOL(<fs_out>) .
READ TABLE lt_jest INTO DATA(ls_jest) WITH KEY aufnr = <fs_out>-aufnr STAT = 'I0076' BINARY SEARCH.
IF ls_jest IS NOT INITIAL.
READ TABLE lt_jest INTO DATA(ls_jest2) WITH KEY aufnr = <fs_out>-aufnr STAT = 'I0012' BINARY SEARCH.
READ TABLE lt_jest INTO DATA(ls_jest3) WITH KEY aufnr = <fs_out>-aufnr STAT = 'I0074' BINARY SEARCH.
IF ls_jest2 IS INITIAL AND ls_jest3 IS INITIAL.
DELETE gt_out. " 删当前行,排除删除生产订单排除有I0076且没有I0012或I0074的订单
ENDIF.
CLEAR: ls_jest,ls_jest2,ls_jest3.
CONTINUE.
ENDIF.
ENDLOOP.参考资料
你认为这篇文章怎么样?
0
0
0
0
0
0





