DEMO创建PR:BAPI_PR_CREATE_SAP刘梦_新浪博客

DEMO创建PR:BAPI_PR_CREATE

直接上干货代码:

*&---------------------------------------------------------------------*

*& Report  ZLM_CREATE_PR

*&

*&---------------------------------------------------------------------*

*& BAPI_REQUISITION_CREATE 和 BAPI_PR_CREATE 相关问题查看NOTE

*& 499627 - FAQ BAPIs for purchase requisitions

*&---------------------------------------------------------------------*

REPORT ZLM_PR_CREATE.

DATA:LV_BANFN       TYPE EBAN-BANFN .

DATA:LV_BNFPO       TYPE EBAN-BNFPO .

DATA:LS_PRITEM      TYPE BAPIMEREQITEMIMP .

DATA:LS_PRITEMX     TYPE BAPIMEREQITEMX .

DATA:LT_PRITEM      TYPE TABLE OF BAPIMEREQITEMIMP .

DATA:LT_PRITEMX     TYPE TABLE OF BAPIMEREQITEMX .

DATA:LS_HEAD        TYPE BAPIMEREQHEADER  .

DATA:LS_HEADX       TYPE BAPIMEREQHEADERX.

DATA:LT_BAPIRETURN  TYPE TABLE OF BAPIRET2 .

*

PARAMETERS:P_MATNR  TYPE MATNR .

PARAMETERS:P_EKORG  TYPE EKORG .

PARAMETERS:P_WERKS  TYPE WERKS_D .

START-OF-SELECTION.

  LS_HEAD-PR_TYPE = 'NB'."订单类型

  LS_HEADX-PR_TYPE = 'X' .

  CLEAR LV_BNFPO.

  LV_BNFPO  = LV_BNFPO    10 ."项目号

  LS_PRITEM-PREQ_ITEM = LV_BNFPO .

  LS_PRITEM-PREQ_NAME = SY-UNAME.

*ls_PRITEM-TRACKINGNO = 'TRACKNO'.

  LS_PRITEM-MATERIAL =   P_MATNR.

  LS_PRITEM-PLANT    =  P_WERKS.

  LS_PRITEM-PURCH_ORG    =  P_EKORG.

  LS_PRITEM-QUANTITY =  10.

  LS_PRITEM-DELIV_DATE = SY-DATUM.

*ls_PRITEM-FIXED = 'X' .

*ls_PRITEM-PUR_GROUP = '109'.

  APPEND LS_PRITEM TO LT_PRITEM .

  LS_PRITEMX-PREQ_ITEM = LV_BNFPO .

  LS_PRITEMX-MATERIAL =   'X'.

  LS_PRITEMX-PLANT    =   'X'.

  LS_PRITEMX-QUANTITY =   'X'.

  LS_PRITEMX-DELIV_DATE = 'X'.

  LS_PRITEMX-PURCH_ORG = 'X'.

*ls_PRITEMX-FIXED = 'X' .

*ls_PRITEMX-PREQ_NAME = 'X'.

*ls_PRITEMX-TRACKINGNO = 'X' .

*IF ls_PRITEM-PUR_GROUP <> '' .

*  ls_PRITEMX-PUR_GROUP = 'X'.

*ENDIF .

  APPEND LS_PRITEMX TO LT_PRITEMX .

  CALL FUNCTION 'BAPI_PR_CREATE'

    EXPORTING

      PRHEADER  = LS_HEAD

      PRHEADERX = LS_HEADX

    IMPORTING

      NUMBER    = LV_BANFN

    TABLES

      RETURN    = LT_BAPIRETURN

      PRITEM    = LT_PRITEM

      PRITEMX   = LT_PRITEMX.

  IF LV_BANFN IS NOT INITIAL.

    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

      EXPORTING

        WAIT = 'X'.

    WRITE:LV_BANFN.

  ELSE.

    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

  ENDIF.


以下是纯顾问群~
微信群:SAP干货铺,请联系本人微信 sapliumeng。
QQ群 :SAP干货铺,  群号:775662808

所有群管理严格,严格禁止一切外来链接、招聘、广告等垃圾信息!

DEMO创建PR:BAPI_PR_CREATE

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值