点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
二.什么是RFC RFC remote function call远程功能调用.意味着调用远程系统的函数. 但是实际应用中. 这个远程系统也可以是自身. 只需要指定目标NONE . 就会指向当前服务器. 三.怎么维护远程系统? 事物代码SM59 ,如果是A调用A系统, 则无需维护RFC目标(当然也可以维护一个调用自身的RFC目标) 四.为什么要使用qRFC 原因一:实现异步调用. 调用方无需等待被调用方的反馈. 调用信息写入队列处理 原因二: 通过调用队列,解决被调用系统的进程占用问题.(一个极端的例子, 如果RFC函数性能极差,大量外围系统同步调用, 每个调用都会占用一个dialog进程,外围系统的RFC同步调用会占满所有的进程, 导入系统无法响应正常用户的处理要求) 五.入站队列与出站队列的区别? 假定A系统调用B系统, 出站队列表示数据停留在A系统的队列中,由A系统调度, 入站队列表示数据会停留在B系统的队列中. 由B系统调度. 如果A系统调用A系统, 则出站/入站没有本质的区别,只是可控制的参数不太一样,这种情况建议使用入站队列 六.队列需要注册么? 一般情况下调度队列无需注册.如果想对队列设置一些特定的参数, 可以注册一下队列. 这样可以给队列定义一些属性 出站队列似乎无需注册,可以直接执行 队列注册事物代码 SMQS(如图) 入站队列似乎需要注册,才能执行,否则队列一致处于ready状态 队列注册事物代码 SMQR(如图) 出站队列注册 入站队列注册 七.怎么实现qRFC的调用? RFC函数 示例函数中只有一个等待语句, 便于显示队列的执行情况(注意该函数的属性中一定要选中RFC调用,该函数最好没有返回参数) 调用qRFC示例程序.示例代码中没有捕获RFC函数调用的例外情况, 实际应用中,最好捕获一下. ZTS_QRFC_CALL,源代码见文末 八.怎么监控队列? 出站队列 事物代码:SMQ1. 入站队列 事物代码:SMQ2. 队列监控可以执行队列内容查看,删除,错误监控,重处理等操作 执行示例程序,产生出站队列 进入SMQ1 执行示例程序,产生入站队列 进入 SMQ2 九.怎么改造原有外围系统接口调用qRFC? 一个最简单的方案是外围系统调用同步RFC函数. 在同步RFC函数中调用目标函数产生队列. 这样每个同步调用都能很快的处理完成,可以避免系统资源的大量占用 约定 如果你对这篇文章感兴趣,请帮忙点赞,在看,分享. (如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.) 公众号 : syjf1976_abap ABAP开发技巧 微信号 : 392077 公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群