DATA: wa_item TYPE zmodifypurorder_tab.
DATA: wa_services TYPE zmodifypurorder_tab2.
DATA:ext_line TYPE n LENGTH 10.
DATA:line_no TYPE n LENGTH 10.
DATA:pckg_no TYPE n LENGTH 10.
DATA:subpckg_no TYPE n LENGTH 10.
DATA:serial_no TYPE n LENGTH 2 .
DATA:interval TYPE STANDARD TABLE OF inriv,
wa_interval TYPE inriv.
pckg_no = \'0000000000\'. "软件包号
line_no = \'0000000001\'. "内部行编号
ext_line = \'0000000000\'. "行号
serial_no = \'00\' . "帐户分配的顺序编号
IF i_header-ebeln IS INITIAL.
msg_type = \'E\'.
message = \'采购订单号为空\'.
EXIT.
ENDIF.
DATA:pocondheader TYPE STANDARD TABLE OF bapimepocondheader,
wa_pocondheader TYPE bapimepocondheader,
pocondheaderx TYPE STANDARD TABLE OF bapimepocondheaderx,
wa_pocondheaderx LIKE bapimepocondheaderx.
IF i_header-loekz = \'X\'."整个删除采购订单
gs_poheader-po_number = i_header-ebeln."采购凭证号
gs_poheader-delete_ind = \'X\'."采购凭证中的删除标识
gs_poheaderx-po_number = \'X\'."采购凭证号
gs_poheaderx-delete_ind = \'X\'."采购凭证中的删除标识
ELSE.
gs_poheader-po_number = i_header-ebeln."采购凭证号
gs_poheader-comp_code = i_header-bukrs. "公司代码 bukrs 公司代码
gs_poheader-purch_org = i_header-ekorg. "采购组织 ekorg 采购组织
gs_poheader-pur_group = i_header-ekgrp. "采购组 ekgrp 采购组
gs_poheaderx-po_number = \'X\'."采购凭证号
gs_poheaderx-comp_code = \'X\'."公司代码
gs_poheaderx-purch_org = \'X\'."采购组织
gs_poheaderx-pur_group = \'X\'."采购组
LOOP AT it_items INTO wa_item.
CALL METHOD z_itf_utils=>add_zero
CHANGING
c_input = wa_item-ebelp.
CALL METHOD z_itf_utils=>add_zero
CHANGING
c_input = wa_item-matnr.
IF wa_item-loekz = \'X\'."行项目有删除标识
gwa_item-po_item = wa_item-ebelp."采购凭证的项目编号
gwa_item-material = wa_item-matnr."物料号
gwa_item-delete_ind = \'X\'."采购凭证中的删除标识
APPEND gwa_item TO gt_item.
gwa_itemx-po_item = wa_item-ebelp."采购凭证的项目编号
gwa_itemx-po_itemx = \'X\'."采购凭证的项目编号
gwa_itemx-material = \'X\'."物料号
gwa_itemx-delete_ind = \'X\'."采购凭证中的删除标识
APPEND gwa_itemx TO gt_itemx.
ELSE." 行项目有更新
IF wa_item-matnr IS INITIAL."服务型订单
CLEAR:gwa_item,gwa_itemx.
SELECT SINGLE packno INTO pckg_no FROM ekpo
WHERE ebeln = i_header-ebeln AND ebelp = wa_item