DATA: lt_items_old    LIKE TABLE OF bapiebanv   WITH HEADER LINE.
  DATA: lt_items_new    LIKE TABLE OF bapiebanv   WITH HEADER LINE.
  DATA: lt_account_old  LIKE TABLE OF bapiebknv   WITH HEADER LINE.
  DATA: lt_account_new  LIKE TABLE OF bapiebknv   WITH HEADER LINE.
  DATA: lt_items        LIKE TABLE OF bapieban    WITH HEADER LINE.
  DATA: lt_account      LIKE TABLE OF bapiebkn    WITH HEADER LINE.
  DATA: lt_bapireturn   LIKE TABLE OF bapireturn  WITH HEADER LINE.
  DATA: t_eban LIKE eban OCCURS 0 WITH HEADER LINE.
  DATA: t_ebkn LIKE ebkn OCCURS 0 WITH HEADER LINE.

CALL FUNCTION 'BAPI_REQUISITION_GETDETAIL'
    EXPORTING
      number             = lt_zmlprtopo-banfn
      account_assignment = 'X'
    TABLES
      requisition_items  = lt_items.
* requisition_account_assignment = lt_account.

LOOP AT lt_items.
    MOVE-CORRESPONDING lt_items TO lt_items_old.
    MOVE-CORRESPONDING lt_items TO lt_items_new.
*&->add.
*& X-固定供应商
    IF lt_zmlprtopo-flag = 'X'.
      lt_items_new-fixed_vend = lt_zmlprtopo-flief.
    ELSE .
      lt_items_new-des_vendor = lt_zmlprtopo-flief."期望供应商
    ENDIF.

APPEND:lt_items_old, lt_items_new.
    CLEAR lt_items_old.
    CLEAR lt_items_new.
    CLEAR lt_items.
  ENDLOOP.

CALL FUNCTION 'BAPI_REQUISITION_CHANGE'
    EXPORTING
      number                  = lt_zmlprtopo-banfn
    TABLES
      requisition_items_old   = lt_items_old
      requisition_items_new   = lt_items_new
      requisition_account_old = lt_account_old
      requisition_account_new = lt_account_new
      return                  = lt_bapireturn.
  READ TABLE lt_bapireturn WITH KEY type = 'E'. "or type = 'A'.
  IF sy-subrc EQ 0.
    l_flag = 'X'.
    LOOP AT lt_bapireturn WHERE type = 'E'.
      lt_zmlprtopo-req_qty_total = '更改PR供应商失败!'.
      CONCATENATE lt_zmlprtopo-req_qty_total lt_bapireturn-message INTO lt_zmlprtopo-req_qty_total SEPARATED BY '&'.
    ENDLOOP.
    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

ELSE.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
  ENDIF.

PR修改例子的更多相关文章

  1. PR 修改保存的增强 ME_UPDATE_REQUISITION

    FUNCTION me_update_requisition."""""""""""&qu ...

  2. Arduino UNO 键盘记录器中时钟接到2口或3口,其它接口不行。马上就要放弃了。要修改例子中时钟的引脚。

  3. 修改PR Cs6,PS Cs6,AU Cs6的启动界面

    转载来源:https://jingyan.baidu.com/article/09ea3ede00aeedc0aede39ca.html 百度了很多,只见PS Cs6的启动界面修改教程,PR,AU C ...

  4. shell脚本学习之case例子

    case和select结构在技术上说并不是循环, 因为它们并不对可执行代码块进行迭代. 但是和循环相似的是, 它们也依靠在代码块顶部或底部的条件判断来决定程序的分支.  在代码块中控制程序分支  ca ...

  5. 修改ncnn的openmp异步处理方法 附C++样例代码

    ncnn刚发布不久,博主在ios下尝试编译. 遇上了openmp的编译问题. 寻找各种解决方案无果,亲自操刀. 采用std::thread 替换 openmp. ncnn项目地址: https://g ...

  6. vue 项目全局修改element-ui的样式

    引入了element-ui,但是和我们自己的样式颜色有很大的不同, 修改例子:在src文件下创建 element-var.scss,代码如下 $--color-primary: yellow;  /* ...

  7. React Native for Android应用名及图标修改

    应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方.今天我们来全面的看一下 应用ID 俗称PackageName,或APP ID.注意,在gradle ...

  8. SAP 常用增强记录文档

    转自:http://blog.csdn.net/budaha 20170215需要一个PR 修改保存时候的增强,目的是同步PR的处理状态 EBAN-STATU 到一个自建表ZTPRTOPO,记得有个P ...

  9. IOS Core Animation Advanced Techniques的学习笔记(五)

    第六章:Specialized Layers   类别 用途 CAEmitterLayer 用于实现基于Core Animation粒子发射系统.发射器层对象控制粒子的生成和起源 CAGradient ...

随机推荐

  1. BZOJ 4001 [TJOI2015]概率论 ——找规律

    题目太神了,证明还需要用到生成函数. 鉴于自己太菜,直接抄别人的结果好了. #include <map> #include <cmath> #include <queue ...

  2. 黑匣子_NOI导刊2010提高 (对顶堆)

    题目描述 Black Box是一种原始的数据库.它可以储存一个整数数组,还有一个特别的变量i.最开始的时候Black Box是空的.而i等于0.这个Black Box要处理一串命令. 命令只有两种: ...

  3. bzoj2324 [ZJOI2011]营救皮卡丘 费用流

    [ZJOI2011]营救皮卡丘 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 2653  Solved: 1101[Submit][Status][D ...

  4. Spoj-ODDDIV Odd Numbers of Divisors

    Given a positive odd integer K and two positive integers low and high, determine how many integers b ...

  5. LightOJ1125 Divisible Group Sums

    Divisible Group Sums Given a list of N numbers you will be allowed to choose any M of them. So you c ...

  6. git提交之后没有push,代码被覆盖之后恢复

    git  reflog  通过这个看commit id git reset [commit id] --hard   有时候要删除一个index.lock文件.

  7. ngxtop

    http://www.cnblogs.com/felixzh/p/8709201.html

  8. 小程序-地图API

    摘要 地图组件-map 注意事项&&Bug: 1.map 组件是由客服端创建的原生组件,它的层级是最高的. 2.请勿在scroll-view中使用map组件 3.css动画对map组件 ...

  9. Spring Boot集成Spring Data Reids和Spring Session实现Session共享(多个不同的应用共用一个Redis实例)

    从Redis的Key入手,比如Spring Session在注解@EnableRedisHttpSession上提供了redisNamespace属性,只需要在这里设置不同的值即可,效果应该是这样的: ...

  10. scp操作实例

    scp 可用于文件的上传与下载,默认端口号是22,通常我们为了安全起见会将默认端口号修改了,而不去直接使用默认的22端口,以下我们以8888端口为例 目标机器 A :192.168.10.30 目标机 ...