二维码

[RFC] ABAP中各种RFC调用总结

Twilight发表于 2016-04-20 17:21FISH_HAPPY 最后回复于 2017-10-26 13:37 [复制链接] 4098 1

RFC(Remote function Call )远程功能调用, 是SAP系统之间以及非SAP系统之间程序通信的基本接口技术. 例如BAPI , ALE都是基于RFC实现的。

RFC大体分为同步和异步两种。
异步有分为:
  • CALL FUNCTION STARTING NEW TASK
    可以扩展成pRFC
  • CALL FUNCTION IN BACKROUND TASK
    可以扩展成tRFC,tRFC可以进一步衍生出qRFC
详情请参考:远程函数RFC调用的原理及特点

各种RFC调用总结:
  • 同步RFC调用需要等待RFM返回结果;异步RFC不需要,但需要通过RECEVICE语句在回调子程序中接收结果;事务性RFM不能接收RFM返回值
  • 同步异步RFC调用,服务器系统必须在调用时可用;事务性RFC无此限制
  • 同步异步RFC调用过程,允许用户与远程系统进行交互对话;事务性RFC不允许
  • 同步异步RFC调用过程,参数值将直接传输至支持远程调用的功能模块;事务性RFC,参数值暂时存储在数据库
  • 对于异步RFC,只适用于SAP系统内部或之间的调用,不能通过T类型目标连接至外部系统
  • 事务性RFC、队列RFC支持状态查询


注意:CALL FUNCTION IN UPDATE TASK、CALL FUNCTION SET UPDATE TASK LOCAL,是指数据库更新数据的模式同步、异步,不是指接口调用的模式,所以Function的处理模式,选择“Update Module”,逻辑简单就是更新各种数据库表,因为这些更新都在同一个LUW中,所以可以控制所有更新要不全部成功,要不失败全部回滚
回复

使用道具 举报

FISH_HAPPY
谢谢分享
回复

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表