SAP 中 BAPI 与函数

作者:SAP养家 约 4 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

如果 你还不知道什么叫函数 ,看下面这个链接。

[ SAP接口中的函数与参数

](http://mp.weixin.qq.com/s?__biz=MzI0MjQ2OTUxNw==&mid=2247486392&idx=1&sn=9d68fa7813b684f0835a3b4bb8b5a08d&chksm=e97a945ade0d1d4c882e51048deb9d40b07442b4b0c22cb25a8b8e003ffc452a4d5e7386fa4b&scene=21#wechat_redirect)

**A: 那么BAPI是什么呢?

** 其实BAPI 也是函数的 一种,结构和函数一模一样。 **

**

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

我们判断一个函数是不是BAPI , 要从业务上讲 。

举例来讲,我们要修改一个物料描述,如下图

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

我们需要输入,物料号 4128 和 华为CPU 。

** 如果是BAPI 的话,参数里面是有这两个字段的 ** 。

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

**

**

**B: 没有BAPI ,需要自己做SHDB录屏

** 如果 没有BAPI 的话,SE37里连名字都找不到。 就需要我们做SHDB录屏了

**C** **: 没有BAPI ,SAP帮我们做录屏

** 这个时候,你网上找到的是:录屏加了外壳,变成函数。并不是真正的BAPI (不能像前面那样直接传入我们想要的,而是按照录屏的模式)

例如 FICO模块的清账,你网上搜BAPI,结果出来是函数(能完成清账功能)。

正常来讲,我们标准清账 只需要凭证号码和行项目足够了 ,你是BAP的话 应该有这两个参数 (其他清账的话参数应该更丰富。 )

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

**我们再看看 用法举例**

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

上面的代码和下面界面是一 一对应的。

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图

** 其实,这个是SAP内置的一个简化的录屏函数 ** 。

**小结:**

我们想批量导入、批量更改某些数据时,都要去找BAPI .

(一)如果有BAPI 我们直接传值,比如前面讲的直接,输入物料编码和新描述,即可完成。

(二)如果没有BAPI的话,我们只能用录屏了(SHDB)。你不但要告诉 物料编码和新描述, 还要告诉系统,你用哪个事务码,点击了哪个按钮,模拟人工操作

(三)还有一种情况,就是函数。

理论上没有BAPI ,就需要我们自己做录屏模拟人工操作. 但是呢SAP有时候自己帮我们做一个录屏,然后变成函数提供给我们用,但本质上还脱离不了录屏那个套路。

** 这个知识点对业务顾问的影响

** 录屏做批量处理,受外界的影响的太大了,你的 **SAP界面设置不同,点击的顺序不同,结果可能都不同** 。

BAPI的话, 只要保证你的数据正确 就可以了,不用考虑操作界面。

所以没有BAPI的话,系统出错的概率就非常大,你需要多测试。

再比如前面那个清账的函数,因为我们操作界面没有行项目,所以函数里也没有行项目, 不能怪ABAP顾问, 我们得想办法才行 。

SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP 中 BAPI 与函数 - 封面图
SAP养家

关于作者:SAP养家

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

来源说明:本文内容由「SAP中BAPI与函数.md」整理生成,仅用于内部技术分享与学习交流。