PR修改例子
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修改例子的更多相关文章
- PR 修改保存的增强 ME_UPDATE_REQUISITION
FUNCTION me_update_requisition."""""""""""&qu ...
- Arduino UNO 键盘记录器中时钟接到2口或3口,其它接口不行。马上就要放弃了。要修改例子中时钟的引脚。
- 修改PR Cs6,PS Cs6,AU Cs6的启动界面
转载来源:https://jingyan.baidu.com/article/09ea3ede00aeedc0aede39ca.html 百度了很多,只见PS Cs6的启动界面修改教程,PR,AU C ...
- shell脚本学习之case例子
case和select结构在技术上说并不是循环, 因为它们并不对可执行代码块进行迭代. 但是和循环相似的是, 它们也依靠在代码块顶部或底部的条件判断来决定程序的分支. 在代码块中控制程序分支 ca ...
- 修改ncnn的openmp异步处理方法 附C++样例代码
ncnn刚发布不久,博主在ios下尝试编译. 遇上了openmp的编译问题. 寻找各种解决方案无果,亲自操刀. 采用std::thread 替换 openmp. ncnn项目地址: https://g ...
- vue 项目全局修改element-ui的样式
引入了element-ui,但是和我们自己的样式颜色有很大的不同, 修改例子:在src文件下创建 element-var.scss,代码如下 $--color-primary: yellow; /* ...
- React Native for Android应用名及图标修改
应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方.今天我们来全面的看一下 应用ID 俗称PackageName,或APP ID.注意,在gradle ...
- SAP 常用增强记录文档
转自:http://blog.csdn.net/budaha 20170215需要一个PR 修改保存时候的增强,目的是同步PR的处理状态 EBAN-STATU 到一个自建表ZTPRTOPO,记得有个P ...
- IOS Core Animation Advanced Techniques的学习笔记(五)
第六章:Specialized Layers 类别 用途 CAEmitterLayer 用于实现基于Core Animation粒子发射系统.发射器层对象控制粒子的生成和起源 CAGradient ...
随机推荐
- 学习系列 - 马拉车&扩展KMP
Manacher(马拉车)是一种求最长回文串的线性算法,复杂度O(n).网上对其介绍的资料已经挺多了的,请善用搜索引擎. 而扩展KMP说白了就是是求模式串和主串的每一个后缀的最长公共前缀[KMP更像是 ...
- 【kmp或扩展kmp】HDU 6153 A Secret
acm.hdu.edu.cn/showproblem.php?pid=6153 [题意] 给定字符串A和B,求B的所有后缀在A中出现次数与其长度的乘积之和 A和B的长度最大为1e6 方法一:扩展kmp ...
- maven配置中国下载源【转:http://www.cnblogs.com/libingbin/p/5949483.html】
修改 配置文件 maven 安装 路径 F:\apache-maven-3.3.9\conf 修改 settings.xml或者在.m2文件夹下新建一个settings.xml 阿里源 <mir ...
- EC++学习笔记(六) 继承和面向对象设计
条款32:确定你的 public 继承塑模出 is-a 关系 public inheritance 意味着 is-a 关系class Derived 以 public 形式继承 class Base, ...
- 洛谷 [P2734] 游戏
博弈论+区间dp 有博弈论吗?大约只有一个博弈论的壳子 设 dp[i][j] 表示区间 i ~ j 先手最多能取多少, 它可以由 i ~ j - 1 与 i + 1 ~ j 来转移, 等于上述两个区间 ...
- 【HDOJ6225】Little Boxes(Java)
题意:输入整数a,b,c,d,输出他们的和 a, b, c, d ≤ 2^62 思路:ANS可能会炸long long 队友直接上Java import java.math.BigInteger; i ...
- 【SPOJ1825】Free tour II (点分治,启发式)
题意: 边权可能为负 思路: 感觉我自己写的还是太过僵硬了,可以灵活一点,比如可以多写几个不同的dfs求出不同的信息,而不是压到同一个dfs里 #include<cstdio> #incl ...
- form:form的一点体会
留个日程吧,明个写,下班了>>
- Redis数据结构之跳跃表
跳跃表是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的. 一.跳跃表结构定义1. 跳跃表节点结构定义: 2. 跳跃表结构定义: 示例: 二.跳跃表节点中各种 ...
- pandaboard串口通信调试
1.在PC上的pyserial程序,到pandaboard后报错,读取和写入会报错 2.使用的是pandaboard的ttyO2串口 3.ls -l /dev/ttyO2,发现是tty,而不是dial ...