*&---------------------------------------------------------------------*
*&
Report 
ZQJ06
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT  ZQJ06.
CONSTANTS : C_X VALUE 'X'.
data: wa_POHEADER TYPE BAPIMEPOHEADER.
DATA WA_POHEADERX TYPE
BAPIMEPOHEADERX. "针对要增加的内容做一个标记,其实标记过了才可以被修改的
data:  EXPPURCHASEORDER TYPE BAPIMEPOHEADER-PO_NUMBER.
data: EXPHEADER
LIKE  BAPIMEPOHEADER.
data: wa_poitem like  BAPIMEPOITEM .
DATA
ITAB_POITEM LIKE TABLE OF WA_POITEM. " po中item的内容
DATA WA_POITEMX TYPE
BAPIMEPOITEMX.  "po中item增加内容的标记 工作区
DATA ITAB_POITEMX LIKE TABLE OF
WA_POITEMX."po中item增加内容的标记 内表
data: wa_POSCHEDULE  type
BAPIMEPOSCHEDULE.
data: itab_poshedule like TABLE OF wa_poschedule.
DATA WA_RETURN  TYPE BAPIRET2.     "消息 返回 ,工作区
DATA ITAB_RETURN LIKE TABLE OF WA_RETURN. "消息返回, 内表
data:RETURN
LIKE    table of BAPIRET2.
 
 wa_POHEADER-comp_code = '1000'.     "公司代碼
 wa_POHEADER-doc_type =
'NB'.             "採購文件類型
 wa_POHEADER-purch_org = '1000'.         
"採購組織
 wa_POHEADER-pur_group = '000'.           "採購群組
 wa_POHEADER-vendor
= '0000000015'.     "供貨(發貨)工廠  有可能是位数不够
 wa_POHEADER-CREAT_DATE =
sy-datum.
 wa_poheader-created_by = sy-uname.
 wa_poheader-doc_date   =
sy-datum.
wa_poheaderx-po_number   = 'X' .
wa_poheaderx-comp_code   = 'X'
.
wa_poheaderx-doc_type    = 'X' .
wa_poheaderx-status      = 'X'
.
wa_poheaderx-creat_date  = 'X'.
wa_poheaderx-created_by =
'X'.
wa_poheaderx-item_intvl = 'X'.
wa_poheaderx-vendor     =
'X'.
wa_poheaderx-langu      = 'X' .
wa_poheaderx-pmnttrms   =
'X'.
wa_poheaderx-purch_org  = 'X' .
wa_poheaderx-pur_group  = 'X'
.
wa_poheaderx-doc_date   = 'X'.
wa_poheaderx-vat_cntry   = 'X' .
wa_poitem-po_item                    = '10'. 
"行项目
*wa_poitem-PO_UNIT   = 'M'.
wa_poitem-MATERIAL    = 
'100-100'.
wa_poitem-QUANTITY     = '1320' .
wa_poitem-MATL_GROUP =
'001'.
wa_poitem-PLANT      = '1000'.
wa_poitem-PREQ_NAME                  = 'qianjun'
.
wa_poitem-PLAN_DEL       = 20.
wa_poitem-PERIOD_IND_EXPIRATION_DATE =
sy-datum.
append wa_poitem to itab_poitem.
wa_poitemx-po_item                   =
'10'.
wa_poitemx-po_itemx                   =
'Y'.
wa_poitemx-MATERIAL                   = 'Y'
.
wa_poitemx-PLANT                      =
'X'.
WA_POITEMX-STGE_LOC                   =
'X'.
wa_poitemx-QUANTITY                   =
'Y'.
wa_poitemx-NET_PRICE                  =
'Y'.
wa_poitemx-PRICE_UNIT                 =
'Y'.
wa_poitemx-PREQ_NAME                  =
'X'.
wa_poitemx-PERIOD_IND_EXPIRATION_DATE = 'Y'.
append wa_poitemx to
itab_poitemx.
wa_poschedule-po_item = 10.
wa_POSCHEDULE-DELIVERY_DATE =
'20110510'.
append wa_POSCHEDULE to itab_poshedule.
CALL FUNCTION 'BAPI_PO_CREATE1'
  EXPORTING
   
POHEADER                     = wa_poheader
    POHEADERX                   
=  wa_poheaderx
*   POADDRVENDOR                 =
*  
TESTRUN                      =
*   MEMORY_UNCOMPLETE            =
*  
MEMORY_COMPLETE              =
*   POEXPIMPHEADER               =
*  
POEXPIMPHEADERX              =
*   VERSIONS                     =
*  
NO_MESSAGING                 =
*   NO_MESSAGE_REQ               =
*  
NO_AUTHORITY                 =
*   NO_PRICE_FROM_PO            
=
 IMPORTING
   EXPPURCHASEORDER             =  EXPPURCHASEORDER
  
EXPHEADER                    =  EXPHEADER
*   EXPPOEXPIMPHEADER           
=
 TABLES
   RETURN                       =  ITAB_RETURN
   POITEM                       =  itab_poitem
  
POITEMX                      =  itab_poitemx
*   POADDRDELIVERY              
=
*   POSCHEDULE                   =  itab_poshedule
*  
POSCHEDULEX                  =
*   POACCOUNT                    =
*  
POACCOUNTPROFITSEGMENT       =
*   POACCOUNTX                   =
*  
POCONDHEADER                 =
*   POCONDHEADERX                =
*  
POCOND                       =
*   POCONDX                      =
*  
POLIMITS                     =
*   POCONTRACTLIMITS             =
*  
POSERVICES                   =
*   POSRVACCESSVALUES            =
*  
POSERVICESTEXT               =
*   EXTENSIONIN                  =
*  
EXTENSIONOUT                 =
*   POEXPIMPITEM                 =
*  
POEXPIMPITEMX                =
*   POTEXTHEADER                 =
*  
POTEXTITEM                   =
*   ALLVERSIONS                  =
*  
POPARTNER                    =
*   POCOMPONENTS                 =
*  
POCOMPONENTSX                =
*   POSHIPPING                   =
*  
POSHIPPINGX                  =
*   POSHIPPINGEXP               
=
          .
DATA ERROR_LOG TYPE C.
LOOP AT ITAB_RETURN INTO WA_RETURN.
  IF WA_RETURN-TYPE =
'E'.
    ERROR_LOG = 'X'.
    EXIT.
  ENDIF.
  CLEAR
WA_RETURN.
ENDLOOP.
IF ERROR_LOG = 'X'.
  CALL FUNCTION
'BAPI_TRANSACTION_ROLLBACK'
    .
  WRITE 'MESSAGE ERROR'.
  LOOP AT
ITAB_RETURN INTO WA_RETURN.
    WRITE: / WA_RETURN-TYPE,
WA_RETURN-MESSAGE.
    CLEAR WA_RETURN.
  ENDLOOP.
ELSE.
  CALL
FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      WAIT   = 'X'.
 
LOOP AT ITAB_RETURN INTO WA_RETURN.
    WRITE: / WA_RETURN-TYPE
,WA_RETURN-MESSAGE.
    CLEAR WA_RETURN.
  ENDLOOP.
ENDIF.

CALL FUNCTION 'BAPI_PO_CREATE1' 相关报错的更多相关文章

  1. JS function document.onclick(){}报错Syntax error on token "function", delete this token

    JS function document.onclick(){}报错Syntax error on token "function", delete this token func ...

  2. JS function document.onclick(){}报错Syntax error on token "function", delete this token - CSDN博客

    原文:JS function document.onclick(){}报错Syntax error on token "function", delete this token - ...

  3. ALERT日志中常见监听相关报错之中的一个:ORA-609错误的排查

    參考MOS文档有: Troubleshooting Guide ORA-609 : Opiodr aborting process unknown ospid (文档 ID 1121357.1) Al ...

  4. TypeError: value.getTime is not a function (elementUI报错转载 )

    "TypeError: value.getTime is not a function" 2018年07月02日 16:41:24 leeleejoker 阅读数:2091 标签: ...

  5. iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决

    〇.前言 <p>在iOS开发中 CocoaPods作为库依赖管理工具就是一把利器. 有了 CocoaPods则无需再通过拖 第三方库及第三方库所依赖的 framework静态库到项目中等麻 ...

  6. ALERT日志中常见监听相关报错之二:ORA-3136错误的排查

    最近在多个大型系统中遇到此问题,一般来说假设client未反映异常的话能够忽略的. 假设是client登陆时遇到ORA-12170: TNS:Connect timeout occurred,能够參考 ...

  7. 解决kettle在两个mysql之间迁移数据时乱码的问题 和 相关报错 及参数调整, 速度优化

    1. 乱码问题 编辑目标数据库的链接: 配置编码参数即可. 2. 报错 No operations allowed after statement closed. 需要调整wait_timeout:  ...

  8. Oracle ALERT日志中常见监听相关报错之二:ORA-3136错误的排查 (转载)

    近期在多个大型系统中遇到此问题,一般来说如果客户端未反映异常的话可以忽略的.如果是客户端登陆时遇到ORA-12170: TNS:Connect timeout occurred,可以参考 http:/ ...

  9. FIM相关报错汇总

    1.错误1:FIM在修改MA名字的时候报错: The management agent cannot be deleted or renamed because the working directo ...

随机推荐

  1. GDI 编程基础简介

    今天准备重新对GDI的知识进行回顾一下,以便加深认识. 一.GDI 在进行Windows编程时,可能经常会用到设备描述表的类型句柄,例如,最厂家的HDC,它就是图像设备描述类型句柄.因为GDI的绘图函 ...

  2. pt-query-digest 实践(转)

    mysql slowlog 使用与介绍 slow_query_log =1-----是否打开 slow_query_log_file = /data/mysql_data/node-1/mysql-s ...

  3. HTML小技巧将table边框改为细线

    HTML制作新手在用TABLE表格时,会碰到如何改变边线粗线,因为默认的TABLE边线设置即使是1px 是很粗的.因此会使用其他一些方法来制作出细线边框,这里介绍一种利用CSS来实现细线的方法,很有效 ...

  4. Linux 线程浅析

    进程和线程的区别与联系 在许多经典的操作系统教科书中,总是把进程定义为程序的执行实例,它并不执行什么, 只是维护应用程序所需的各种资源,而线程则是真正的执行实体. 为了让进程完成一定的工作,进程必须至 ...

  5. (转)python装饰器二

    Python装饰器进阶之二 保存被装饰方法的元数据 什么是方法的元数据 举个栗子 def hello(): print('Hello, World.') print(dir(hello)) 结果如下: ...

  6. Synchronized与ReentrantLock的区别

    1.ReentrantLock 拥有Synchronized相同的并发性和内存语义,此外还多了 锁投票,定时锁等候和中断锁等候 线程A和B都要获取对象O的锁定,假设A获取了对象O锁,B将等待A释放对O ...

  7. 【温故知新】——原生js中常用的四种循环方式

    一.引言 本文主要是利用一个例子,讲一下原生js中常用的四种循环方式的使用与区别: 实现效果: 在网页中弹出框输入0   网页输出“欢迎下次光临” 在网页中弹出框输入1   网页输出“查询中……” 在 ...

  8. 面向对象程序的设计原则--Head First 设计模式笔记

    一.找出应用中可能需要变化的地方,把它们独立出来,不要和那些不需要变化的代码混在一起. 把会变化的部分取出并“封装”起来,好让其他部分不会受到影响.这样,代码变化引起的不经意后果变少,系统变得更有弹性 ...

  9. Java Jsoup Spider抓取数据入库

    这里从车商网上进行数据抓取,请保持良好的职业道德不要将数据用于商业途径.工信部官网有汽车方面的公告目录,那里有最全的pdf或word数据,鉴于word和pdf解析的繁琐和耗时,我暂时用这个网站的数据进 ...

  10. iPhone换电池是原装电池好还是换第三方大容量电池好?

    转:https://www.xianjichina.com/news/details_60791.html 最近这段时间苹果降速门事件持续发酵,闹得满城风雨.尽管苹果公司两次致歉,很多果粉都去更换电池 ...