BAPI的小例子
来源:互联网 发布:网络教育本科报名时间 编辑:程序博客网 时间:2024/06/05 17:41
DATA: MY_POHEADER LIKE BAPIMEPOHEADER,
MY_POHEADERX LIKE BAPIMEPOHEADERX,
MY_POITEM LIKE BAPIMEPOITEM Occurs 0 With header line,
MY_POITEMX LIKE BAPIMEPOITEMX Occurs 0 With header line,
MY_POSCHEDULE LIKE BAPIMEPOSCHEDULE Occurs 0 With header line,
MY_POSCHEDULEX LIKE BAPIMEPOSCHEDULX Occurs 0 With header line,
MY_POCOND LIKE BAPIMEPOCOND Occurs 0 With header line,
MY_POCONDX LIKE BAPIMEPOCONDX Occurs 0 With header line,
MY_POPARTER LIKE BAPIEKKOP Occurs 0 With header line,
MY_EXPPURCHASEORDER LIKE BAPIMEPOHEADER-PO_NUMBER,
MY_EXPHeader LIKE BAPIMEPOHEADER,
MY_Return LIKE BAPIRET2 Occurs 0 With header line.
*&--------------------------------------------------------------------*
MY_POHEADER-COMP_CODE = '1000'.
MY_POHEADER-DOC_TYPE = 'NB'.
MY_POHEADER-ITEM_INTVL = '00010'.
MY_POHEADER-VENDOR = '0000050026'.
MY_POHEADER-PMNTTRMS = 'GW04'.
MY_POHEADER-PURCH_ORG = 'ZX1'."'1100'.
MY_POHEADER-PUR_GROUP = '003'.
MY_POHEADER-CURRENCY = 'CNY'.
*&---------------------------------------------------------------------*
MY_POHEADERX-COMP_CODE = 'X'.
MY_POHEADERX-DOC_TYPE = 'X'.
MY_POHEADERX-ITEM_INTVL = 'X'.
MY_POHEADERX-VENDOR = 'X'.
MY_POHEADERX-PMNTTRMS = 'X'.
MY_POHEADERX-PURCH_ORG = 'X'.
MY_POHEADERX-PUR_GROUP = 'X'.
*&----------------------------------------------------------------------*
Clear MY_POITEM.
MY_POITEM-PO_ITEM = '00010'.
MY_POITEM-MATERIAL = 'SY00-ZZ01-003'."'000000000001101979'.
MY_POITEM-PLANT = 'SY00'."'1101'.
MY_POITEM-STGE_LOC = '1011'.
MY_POITEM-QUANTITY = 15.
*MY_POITEM-PO_UNIT = 'EA'.
APPEND MY_POITEM.
*&---------------------------------------------------------------------*
Clear MY_POITEMX.
MY_POITEMX-PO_ITEM = '00010'.
MY_POITEMX-MATERIAL = 'X'.
MY_POITEMX-PLANT = 'X'.
MY_POITEMX-STGE_LOC = 'X'.
MY_POITEMX-QUANTITY = 'X'.
APPEND MY_POITEMX.
*&---------------------------------------------------------------------*
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
POHEADER = MY_POHEADER
POHEADERX = MY_POHEADERX
IMPORTING
EXPPURCHASEORDER = MY_EXPPURCHASEORDER
TABLES
POITEM = MY_POITEM
POITEMX = MY_POITEMX
Return = MY_Return.
*&-------------------------------------------------------------------------*.
READ TABLE my_RETUrN WITH KEY TYPE = 'E'.
*
IF SY-SUBRC <> 0 ."AND NOT LV_MTDOC IS INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
* P_MBLNR = LV_MTDOC.
* PERFORM UPLOAD_100.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
.
* MESSAGE I003 WITH LT_RETUN-MESSAGE.
ENDIF.
*IF SY-SUBRC NE 0.
* Write '测试过程有问题'.
*ELSE.
Write: / MY_EXPPURCHASEORDER.
ULine.
Loop at My_Return.
Write: / MY_Return-Type,MY_Return-ID,MY_Return-NUMBER,MY_Return-Message,MY_Return-Log_No,
MY_Return-Log_Msg_No,MY_Return-Parameter,MY_Return-Row,MY_Return-Field,MY_Return-System.
EndLoop.
Uline.
*endif.
MY_POHEADERX LIKE BAPIMEPOHEADERX,
MY_POITEM LIKE BAPIMEPOITEM Occurs 0 With header line,
MY_POITEMX LIKE BAPIMEPOITEMX Occurs 0 With header line,
MY_POSCHEDULE LIKE BAPIMEPOSCHEDULE Occurs 0 With header line,
MY_POSCHEDULEX LIKE BAPIMEPOSCHEDULX Occurs 0 With header line,
MY_POCOND LIKE BAPIMEPOCOND Occurs 0 With header line,
MY_POCONDX LIKE BAPIMEPOCONDX Occurs 0 With header line,
MY_POPARTER LIKE BAPIEKKOP Occurs 0 With header line,
MY_EXPPURCHASEORDER LIKE BAPIMEPOHEADER-PO_NUMBER,
MY_EXPHeader LIKE BAPIMEPOHEADER,
MY_Return LIKE BAPIRET2 Occurs 0 With header line.
*&--------------------------------------------------------------------*
MY_POHEADER-COMP_CODE = '1000'.
MY_POHEADER-DOC_TYPE = 'NB'.
MY_POHEADER-ITEM_INTVL = '00010'.
MY_POHEADER-VENDOR = '0000050026'.
MY_POHEADER-PMNTTRMS = 'GW04'.
MY_POHEADER-PURCH_ORG = 'ZX1'."'1100'.
MY_POHEADER-PUR_GROUP = '003'.
MY_POHEADER-CURRENCY = 'CNY'.
*&---------------------------------------------------------------------*
MY_POHEADERX-COMP_CODE = 'X'.
MY_POHEADERX-DOC_TYPE = 'X'.
MY_POHEADERX-ITEM_INTVL = 'X'.
MY_POHEADERX-VENDOR = 'X'.
MY_POHEADERX-PMNTTRMS = 'X'.
MY_POHEADERX-PURCH_ORG = 'X'.
MY_POHEADERX-PUR_GROUP = 'X'.
*&----------------------------------------------------------------------*
Clear MY_POITEM.
MY_POITEM-PO_ITEM = '00010'.
MY_POITEM-MATERIAL = 'SY00-ZZ01-003'."'000000000001101979'.
MY_POITEM-PLANT = 'SY00'."'1101'.
MY_POITEM-STGE_LOC = '1011'.
MY_POITEM-QUANTITY = 15.
*MY_POITEM-PO_UNIT = 'EA'.
APPEND MY_POITEM.
*&---------------------------------------------------------------------*
Clear MY_POITEMX.
MY_POITEMX-PO_ITEM = '00010'.
MY_POITEMX-MATERIAL = 'X'.
MY_POITEMX-PLANT = 'X'.
MY_POITEMX-STGE_LOC = 'X'.
MY_POITEMX-QUANTITY = 'X'.
APPEND MY_POITEMX.
*&---------------------------------------------------------------------*
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
POHEADER = MY_POHEADER
POHEADERX = MY_POHEADERX
IMPORTING
EXPPURCHASEORDER = MY_EXPPURCHASEORDER
TABLES
POITEM = MY_POITEM
POITEMX = MY_POITEMX
Return = MY_Return.
*&-------------------------------------------------------------------------*.
READ TABLE my_RETUrN WITH KEY TYPE = 'E'.
*
IF SY-SUBRC <> 0 ."AND NOT LV_MTDOC IS INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
* P_MBLNR = LV_MTDOC.
* PERFORM UPLOAD_100.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
.
* MESSAGE I003 WITH LT_RETUN-MESSAGE.
ENDIF.
*IF SY-SUBRC NE 0.
* Write '测试过程有问题'.
*ELSE.
Write: / MY_EXPPURCHASEORDER.
ULine.
Loop at My_Return.
Write: / MY_Return-Type,MY_Return-ID,MY_Return-NUMBER,MY_Return-Message,MY_Return-Log_No,
MY_Return-Log_Msg_No,MY_Return-Parameter,MY_Return-Row,MY_Return-Field,MY_Return-System.
EndLoop.
Uline.
*endif.
0 0
- BAPI的小例子
- BAPI:BAPI_GOODSMVT_CREATE货物移动例子
- BAPI调用 - 创建po的bapi BAPI_PO_CREATE1
- 接口的小例子
- 动态的小例子
- File的小例子
- ajax的小例子
- AJAX的小例子
- innerHTML 的小例子
- Sqlite 的小例子
- cglib的小例子
- clone的小例子
- awk的小例子
- printf的小例子
- 继承的小例子
- 触发器的小例子
- 一个小的例子
- 小波的例子
- openfire学习:1:整体了解
- cocos2dx 3.1 使用 cocostudio 导出动画文件 vs2012
- xmanager使用方法
- final修饰类、方法和变量的目的
- 继承和多态详解【转自百度知道】
- BAPI的小例子
- Mybatis学习
- 一个人的眼界和思想是很重要的,程序员也一样需要!
- C/C++软件产品持续集成与维护 初探
- 在Mac配置基本的androidpn 解决遇到的各种问题
- Android4.4 4.2keyguard锁屏流程梳理
- 人脸识别资源发现
- yssooalv
- 微软SMB 3.0文件共享协议新特性介绍