SAPBAPI 案例分析所有模块顾问

作者:SAP养家 约 5 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

我们在前面章节里讲了一篇 [ SAP所有模块顾问都必须懂的BAPI

](http://mp.weixin.qq.com/s?__biz=MzI0MjQ2OTUxNw==&mid=2247484219&idx=1&sn=98e1330dbcd93cf9198ffbf474ae7d8b&chksm=e97a9cd9de0d15cf2f3bbdc37416adff4451202936bb4d2e770660ccbc1e0175351fa75553cc&scene=21#wechat_redirect)

.

这节课,我们拿一个采购申请冻结的案例来分析一下:

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

这个案例的BAPI是 BAPI_PR_CHANGE (采购申请修改)。

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

1、首先你怎么知道这个BAPI 名称叫什么呢?

肯定是问度娘了。

2、 这个事务码该怎么用呢?

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

2.1 参数分析-抬头

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

我们再返回到第四张图 ,知道 NUMBER 该填什么了吗?答案是采购申请单号

另外我们会发现:

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

慢慢试错

小贴士:对于一个陌生的BAPI 我们不可能一下子就知道怎么用,肯定是要慢慢试错,慢慢琢磨

2.2 参数分析--行项目

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

上面那个地方也是慢慢扒拉扒拉到的

请记住,我们的参数名是 PRITEM (第3步会用到)。

然后双击的是他的类型 BAPIMEREQITEMIMP。

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

继续往下找

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

我们要记住第一个框框里名称:REQ_BLOCKED 和 RESON_BLOCKING .

注意:REQ_BLOCKED 数据类型是 CHAR1 (一个字符), 是不是和下图的 1、3、4、空白吻合了呢?

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

经过前面几步的分析, **_基本把我们业务上需要的字段和BAPI里的字段对应起来了。_ **

3 输入运行参数

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

4 双胞胎用法(并非所有BAP都会出现)

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

仔细观察下 PREQ_ITEMX 和 PREQ_ITEM 里面的组件名称完全一样,只是长度是1

像带X一般和不带X的是一对 ,如果我们那个字段要修改,必须打上X,否则不生效。

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

5 开始运行

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图

为什么说,暂时成功呢?

虽然说提示成功了,我们退出来之后用ME53N查看,数据并没有修改,难道SAP忽悠我们不成,不是,这个涉及到一个保存机制,我们下节课讲。

6 思考篇

这个过程操作下来,是不是感觉到还是挺麻烦的。

其实我们这个过程只是测试而已,真正调用时要用ABAP代码或者接口。

比如OA要调用SAP一个功能,我们可以在OA里调用,也可以直接在SAP里按照前面步骤调用、测试。

还有如果OA调用的结果不符合预期,到底是OA处理过程错了,还是SAP本身写错了,我们可以按照前面步骤测试下,看看到底是谁错了。

SAPBAPI 案例分析所有模块顾问 - 封面图
SAPBAPI 案例分析所有模块顾问 - 封面图
SAP养家

关于作者:SAP养家

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「SAPBAPI案例分析所有模块顾问.md」整理生成,仅用于内部技术分享与学习交流。