DATA: lv_pgmng TYPE afpo-pgmng.
DATA: lv_objnr TYPE aufk-objnr,
lv_line TYPE bsvx-sttxt.
* 检查下单数量 是否超过指令单需求数量
SELECT aufnr, " 生产订单号
kdauf, " 销售订单号
kdpos, " 销售订单行项目
matnr, " 物料编码
pgmng " 订单数量
FROM afpo
INTO TABLE @DATA(lt_afpo)
WHERE kdauf = @<fs_alv>-zvbel
AND matnr = @<fs_alv>-matnr.
LOOP AT lt_afpo INTO DATA(ls_afpo).
lv_objnr = 'OR' && ls_afpo-aufnr.
CLEAR lv_line.
CALL FUNCTION 'STATUS_TEXT_EDIT'
EXPORTING
objnr = lv_objnr
spras = '1'
IMPORTING
line = lv_line
EXCEPTIONS
object_not_found = 1.
IF lv_line CS '删除' OR lv_line CS '标记'.
ELSE.
lv_pgmng = lv_pgmng + ls_afpo-pgmng. " 排除删除后 已下单数量
ENDIF.
CLEAR ls_afpo.
ENDLOOP.
* 加上准备下单数量
lv_pgmng = lv_pgmng + gs_alv-zwcjsl.
IF lv_pgmng > <fs_alv>-emeng.
<fs_alv>-msg = '下单总数量超过指令单需求数量'(t34).
<fs_alv>-icon = icon_led_red.
CONTINUE.
ENDIF.
相关表 AUFK-OBJNR
JEST-STAT
TJ02T