修改采购订单,服务型采购订单
  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-ebelp.
          ext_line    =