zoukankan      html  css  js  c++  java
  • PO BAPI "BAPI_PO_CREATE1"

     DATA: poheader LIKE  bapimepoheader,
            poheaderx LIKE  bapimepoheaderx,
            poitem  LIKE  bapimepoitem OCCURS WITH HEADER LINE,
            poitemx LIKE  bapimepoitemx OCCURS WITH HEADER LINE,
            poschedule  LIKE bapimeposchedule OCCURS WITH HEADER LINE,
            poschedulex LIKE bapimeposchedulx OCCURS WITH HEADER LINE,
            pomepocond  LIKE bapimepocond OCCURS WITH HEADER LINE,
            pomepocondx LIKE bapimepocondx OCCURS WITH HEADER LINE,
            potextitem  LIKE bapiekpotx OCCURS WITH HEADER LINE.

      CLEAR: poheader, poheaderx, poitem, poitemx,
             poschedule, poschedulex, pomepocond, pomepocondx, potextitem,
             return.
      REFRESH: poitem, poitemx, poschedule ,poschedulex, pomepocond, pomepocondx, potextitem, return.

      DATA: t_ebelp LIKE ekpo-ebelp.

    *****PO HEAD

          poheader-comp_code po_head-comp_code.
          poheader-doc_type  'Z3'.
          poheader-vendor    po_head-lifnr.
          poheader-purch_org po_head-purch_org.
          poheader-pur_group po_head-pur_group.
          poheader-doc_date  po_head-bedat.      "凭证日期

          poheaderx-comp_code 'X'.
          poheaderx-doc_type  'X'.
          poheaderx-vendor    'X'.
          poheaderx-purch_org 'X'.
          poheaderx-pur_group 'X'.
          poheaderx-doc_date  'X'.


    *-----PO item
          CLEAR: t_ebelp.
          LOOP AT po_item.
            poitem-po_item    t_ebelp + '10'.
            t_ebelp           poitem-po_item.
            poitem-material   po_item-matnr.
            poitem-plant      po_item-werks.
            poitem-stge_loc   po_item-lgort.
            poitem-quantity   po_item-menge.
            poitem-po_unit    po_item-meins.
            poitem-net_price  po_item-price.
            poitem-price_unit po_item-price_unit.
            poitem-po_price   '1'.
            poitem-info_rec   po_item-info_rec.
            poitem-bras_nbm   po_item-sb_no.
            poitem-val_type   po_item-lgort.
            poitem-preq_name  po_item-afnam.      "申请者
            poitem-trackingno po_item-trackingno.
            poitem-plan_del   po_item-plan_del.
            poitem-tax_code   po_item-tax_code.   "税码
            APPEND poitem.
            CLEAR: poitem.

            poitemx-po_item    t_ebelp.
            poitemx-delete_ind 'X'.
            poitemx-material   'X'.
            poitemx-plant      'X'.
            poitemx-stge_loc   'X'.
            poitemx-quantity   'X'.
            poitemx-po_unit    'X'.
            poitemx-net_price  'X'.
            poitemx-price_unit 'X'.
            poitemx-po_price   'X'.
            poitemx-info_rec   'X'.
            poitemx-bras_nbm   'X'.
            poitemx-val_type   'X'.
            poitemx-preq_name  'X'.               "申请者
            poitemx-trackingno 'X'.
            poitemx-plan_del   'X'.
            poitemx-tax_code   'X'.               "税码
            APPEND poitemx.
            CLEAR: poitemx.


            poschedule-po_item       t_ebelp.
            poschedule-sched_line    1.
            poschedule-quantity      po_item-menge.
            poschedule-delivery_date po_item-delivery_date.
            APPEND poschedule.
            CLEAR: poschedule.

            poschedulex-po_item       t_ebelp.
            poschedulex-sched_line    1.
            poschedulex-quantity      'X'.
            poschedulex-delivery_date 'X'.
            APPEND poschedulex.
            CLEAR: poschedulex.


            potextitem-po_item   t_ebelp.
            potextitem-text_id   'F01'.
            potextitem-text_line po_item-text_line.
            APPEND potextitem.
            CLEAR: potextitem.

    *-------加税
            pomepocond-itm_number   t_ebelp.
            pomepocond-condition_no '00001'.
            pomepocond-cond_type    'PBXX'.
            pomepocond-cond_value   =  po_item-price.
            pomepocond-cond_p_unt   =  po_item-price_unit.
            pomepocond-currency     'RMB'.
            pomepocond-change_id    'U'.
            APPEND pomepocond.
            CLEAR: pomepocond.

            pomepocondx-itm_number   t_ebelp.
            pomepocondx-condition_no '00001'.
            pomepocondx-cond_type    'X'.
            pomepocondx-cond_value   'X'.
            pomepocondx-cond_p_unt   'X'.
            pomepocondx-currency     'X'.
            pomepocondx-change_id    'X'.
            APPEND pomepocondx.
            CLEAR: pomepocondx.

            pomepocond-itm_number   t_ebelp.
            pomepocond-condition_no '00001'.
            pomepocond-cond_type    'ZVAT'.
            pomepocond-cond_value   po_item-cond_value.
            pomepocond-currency     '%'.
            pomepocond-change_id    'U'.
            APPEND pomepocond.
            CLEAR: pomepocond.

            pomepocondx-itm_number   t_ebelp.
            pomepocondx-condition_no '00001'.
            pomepocondx-cond_type    'X'.
            pomepocondx-cond_value   'X'.
            pomepocondx-currency     'X'.
            pomepocondx-change_id    'X'.
            APPEND pomepocondx.
            CLEAR: pomepocondx.
          ENDLOOP.

          CALL FUNCTION 'BAPI_PO_CREATE1'
            EXPORTING
              poheader         poheader
              poheaderx        poheaderx
              memory_complete  flag_temp
            IMPORTING
              exppurchaseorder ebeln
            TABLES
              return           return
              poitem           poitem
              poitemx          poitemx
              poschedule       poschedule
              poschedulex      poschedulex
              pocond           pomepocond
              pocondx          pomepocondx
              potextitem       potextitem.

          READ TABLE return WITH KEY type 'E'.
          IF sy-subrc 0. "有出错信息
            LOOP AT return WHERE type 'E'.
              CONCATENATE e_message ',' return-message INTO e_message.
              CONDENSE e_message.
            ENDLOOP.
          ELSE.
           

            CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
            EXPORTING
              wait 'X'.

            WAIT UP TO SECONDS.

          ENDIF.

  • 相关阅读:
    webstorm配置github 以及本地代码上传github。
    日期控件------moment.js
    图片查看器
    日期
    配置一个node服务器
    git代码管理
    vue
    javascript (字符串, 数组, 对象 , 日期 和 操作元素节点 动画 定时器)
    html css
    JS常用方法
  • 原文地址:https://www.cnblogs.com/rockyzjut/p/3170909.html
Copyright © 2011-2022 走看看