在项目中我们经常听说RFC 和 BAPI
那么这两者之间有什么关系呢?
我们想说说这两个的作用
在 [ SAP BAPI案例分析(所有模块顾问)
](http://mp.weixin.qq.com/s?__biz=MzI0MjQ2OTUxNw==&mid=2247484770&idx=1&sn=a0d27e210b5a6790f4a593b1f8414278&chksm=e97a9a80de0d1396fcf9ef73eac4b3701567fe958defaebf15177342ea92a675309afdd10949&scene=21#wechat_redirect)
文章中我们详细讲了,我们可以通过函数来实现采购申请的修改,有了这个函数我们可以做很多事情,比如在 ABAP代码里循环调用,实现批量修改的功能
。还可以给OA调用(理论上),实现数据自动处理的功能。
我们知道,那个采购申请修改的BAPI,不但可以冻结,还可以修改数量、还可以修改名称、修改申请人等一系列的功能。
因此这个BAPI的 传入参数就非常丰富了,可以达到几十个 。
如果你直接提供给OA使用,那么OA顾问看到几个个参数就晕菜了。
看上面是不是很多。
因此我们要把这个函数再次包装起来(比如汽车加速,首选发动机转速提高,然后很多齿轮开始转,最后带动轮胎转,这一系列的动作归结到人这里就是
脚轻轻踩了一下车就加速了 ),那么RFC该怎么封装呢?
看过我开头链接文章的朋友就有疑问了,你不是还有一个“1 手工冻结要传吗”,如下图:
答案是不需要,我们在RFC代码中直接给固定值即可。
这下知道RFC和BAPI的差别了吧。
当然RFC不一定要调用BAPI,还可以保存到自建表等等。
另外RFC还要勾选远程调用,否则其他系统无法调用成功的。
最后调用时需要用名和密码,这个用户不能是普通的对话用户,而是系统或通讯数据用户。