SAP BAPI案例分析(所有模块顾问)

我们在前面章节里讲了一篇 SAP所有模块顾问都必须懂的BAPI .
这节课,我们拿一个采购申请冻结的案例来分析一下:


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


1、首先你怎么知道这个BAPI 名称叫什么呢?
肯定是问度娘了。

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

2.1 参数分析-抬头

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

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

2.2 参数分析–行项目

请记住,我们的参数名是 PRITEM (第3大步会用到)。
然后双击的是他的类型 BAPIMEREQITEMIMP。

继续往下找

我们要记住第一个框框里名称: REQ_BLOCKED 和 RESON_BLOCKING .
注意:REQ_BLOCKED 数据类型是 CHAR1 (一个字符),是不是和下图的 1、3、4、空白吻合了呢?

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

3 输入运行参数

4 小技巧

仔细观察下 PREQ_ITEMX 和 PREQ_ITEM 里面的组件名称完全一样,只是长度是1
像带X一般和不带X的是一对,如果我们那个字段要修改,必须打上X,否则不生效。

5 开始运行

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

6 事考篇
这个过程操作下来,是不是感觉到还是挺麻烦的。
其实我们这个过程只是测试而已,真正调用时要用ABAP代码或者接口。
比如OA要调用SAP一个功能,我们可以在OA里调用,也可以直接在SAP里按照前面步骤调用测试。
还有 OA调用的结果不符合预期,到底是OA处理过程错了,还是SAP本身写错了,我们可以按照前面步骤测试下,看看到底是谁错了。

ICP备案号: 鄂ICP备2022007022号-1