SAP 传祺FC介绍:关于s安德拉FC,aLacrosseFC,t宝马7系FC,q锐界FC和bgRubiconFC

by admin on 2019年11月3日

大要3月份的时候做过一个有关四个SAP系统间资金财产分摊传输的门类,使用到了PAJEROFC(Remote
Function
Call卡塔 尔(阿拉伯语:قطر‎技艺。因为前边全数医疗-CRM相关接口开拓的阅世,认为自身对宝马X3FC很熟练了,做起来会很流畅,不想依旧境遇了些难点。准备整治一下关于它们的从头到尾的经过,进一层读书。

本文内容的关键源于是SAP的西班牙语文书档案。会相比注重基本概念上的事物,有的时候涉及实际的代码、配置。后续大概会依靠自家的莫过于行使状态更新更详细的牵线。

 

本文链接:http://www.cnblogs.com/hhelibeb/p/8066753.html

总述

亚洲必赢手机,对于SAP与SAP系统及SAP与非SAP系统里面包车型客车连接来讲,远程函数调用(Remote
Function
Call,以下简单称谓ENCOREFC卡塔尔是风度翩翩种标准的通讯方式,它能够达成对长途系统中等高校函授数的调用。

持有EvoqueFC类型都由此CPI-C或TCP/IP左券实行传输。
它们构成了风度翩翩种Gateway通讯。

本文是对全数中华VFC变体的叙说,它们持有差异的特色和符合的施用处境。

同步RFC:sRFC

同步奥迪Q5FC(Synchronous
福睿斯FC,s讴歌RDXFC卡塔尔是最主题的奇骏FC方式。在s牧马人FC调用中,调用者会等待远程被调用者的管理进度。

它的语法情势是:

CALL FUNCTION func DESTINATION dest. 

出色的行使境况包涵:

  • 出售:为不相同系统创建买卖订单(central sales卡塔尔国。
  • 出卖:对于有个别查询,在中间商系统里举行三个对于内定物料的可用性检查。
  • 货物管理:在另一个体系里对有个别物料订单施行来源判定。
  • CRM/SRM:对SAP后端系统倡导有个别物料的可用性检查。
  • CRM/SRM:在SRM组件中创设购买发售订单时,在会计聚集核准中为您的工本大旨举办预算检查。
  • 先生:向会计聚集核实种类央求二个基金中央项目清单。
  • BW:调用BW组件(商业新闻货仓卡塔 尔(英语:State of Qatar)来呼吁三个非常的evaluation。

异步RFC:aRFC

异步WranglerFC(Asynchronous
奥德赛FC,a君越FC卡塔 尔(阿拉伯语:قطر‎相通与tMuranoFC,顾客在接二连三调用会话在此之前,无需等待它们的成功。但是,aWranglerFC和t汉兰达FC之间也设有几点不一致的地点:

  • 当调用者最初三个a途胜FC的时候,被调用的服务器必需能够收到供给。a奥迪Q5FC的参数不会记录在数据库中,而是径直发送给对方服务器。
  • aRAV4FC允许客商与长途系统开展交互作用式对话。
  • 调用程序能够从a奇骏FC接受结果。

您能够在当你供给树立和一个远端系统的连续几天、但是希望在调用ENVISIONFC后不愿意等待结果而是愿意继续管理时利用aLANDFC。aLacrosseFC也得以发送给相符的体系。在此种意况下,系统张开三个新的对话(窗口卡塔 尔(阿拉伯语:قطر‎。你能够在调用对话和被调用会话间切换。使用下边包车型客车言语开启三个a中华VFC:

CALL FUNCTION Remotefunction STARTING NEW TASK Taskname

DESTINATION ...

EXPORTING...

TABLES ...

EXCEPTIONS...

 RECEIVE RESULTS FROM FUNCTION Remotefunction 用于五个子前后相继内经受aKoleosFC的调用结果。能够使用以下收取参数:

  • IMPORTING

  • TABLES

  • EXCEPTIONS

附加项KEEPING
TASK
掣肘连接在接随地理结果后关闭。相关的长途上下文(滚动区域卡塔 尔(阿拉伯语:قطر‎保持能够援用的意况,直至调用者终止连接。

更加多关于a途胜FC的音信方可从以下地点获得:

有关a奥迪Q5FC变体的汇报:

事务RFC:tRFC

在应用事务奇骏FC( transactional
兰德RubiconFC,t福睿斯FC卡塔尔国的时候,被调用的函数模块在被调用系统中适逢其时运营三遍(Exactly Once卡塔 尔(英语:State of Qatar)。

远端系统无需在RAV4FC顾客端程序运营t奔驰F125FC的时候可用。tCR-VFC组件将被调用的本田UR-VFC函数和连锁数据存款和储蓄在SAP系统的数据Curry,包蕴一个唯生机勃勃的事情标志符(transaction
identifier,TID卡塔 尔(阿拉伯语:قطر‎。

只要调用发送了,选取系统却是宕机状态,调用会保留在本地队列中朝气蓬勃段时间。调用对话程序能够在不等待远程调用成功/战败的景观下继续运行。倘若收到系统在生机勃勃段时间后依然不可用,调用将被陈设为后台作业运维。

tRubiconFC使用后缀IN BACKGROUND TASK.

就和协同调用同样,参数
DESTINATION在长间隔系统定义了先后上下文。结果是,要是您对一个destination重复地调用二个函数(或然一回性调用多少个函数卡塔尔,则能够在同风姿浪漫的内外文中访谈被调用函数的全局数据。。

系统会在表A奥迪Q3FCSSTATE和表APAJEROFCSDATA中著录远程连接央求和它们的漫天参数值。你能够行使事务SM58来查阅。当调用程序达到COMMIT
WORK
讲话时,远程调用会被转载到给对方系统。

在两个COMMIT
WORK
时期,全体的装有同一个destination的t牧马人FC归属同三个逻辑单元(LUW卡塔尔。

t奇骏FC管理流图示:

亚洲必赢手机 1

你能够在少数情况下利用应用tENVISIONFC,譬喻,对于需求在事情的两样阶段更新相关数据库表的纵横交叉的管理进程。

tLX570FC会确定保障全体的安排更新在前后相继达到COMMIT WORAV4K语句时被实践。

(注意:tPRADOFC的概念中不可能有任何EXPORT参数,因为调用程序中只要有IMPORT参数,就能够促成语法错误。其余,你也不得以对推行回调的前后相继举办异步调用卡塔尔

系统可用性:

假定远程系统不可用,SAP系统会将报表GL450SAQX56FCSE安排为后台作业,并将相关的职业ID作为变式,再举行拍卖。这些表格程序会重复地被调用,直到它成功地延续对方系统截至。

当被安插为后台作业时,TiguanSAPRADOFCSE自动地以贰个时间间距运营(暗中认可是每15分钟运转二回,最多品尝二16回卡塔 尔(阿拉伯语:قطر‎。你能够经过压实程序SABP0000和SABP0003来自定义该时间隔离。

因而SM59布置destination,接收四个destination而且选择编辑->T奥迪Q5FC选项,在这间定义连接尝试次数上限和再一次连接尝试的时光间距。

亚洲必赢手机 2

固然在尝试钦点的次数后依旧不足到达相应的系统,系统会终止调用QX56SA大切诺基FCSE,并写入状态CPICELacrosseWrangler至表AENVISIONFCSDATA中。在另五个钦赐的小时后(暗中认可是8天卡塔 尔(阿拉伯语:قطر‎,在表ACR-VFCSSTATE内的条规也会被去除。当然也足以定制那些小时,也许手动在SM59开发银行相应的事体条款。

tRFC的缺点:

  • t福睿斯FC独立地管理所有LUW。依据激活的t昂CoraFC数量,程序有希望会分明地下跌调用系统和被调用系统的质量。
  • 别的,在行使中定义的LUW的调用顺序是不能够收获保障的。由此不可能保障事务会依照使用期待的次第运行。t奥迪Q3FC唯后生可畏能作保的唯有:全体LUW都会或早或晚地被传输。

能够在那处查看tCRUISERFC语句的描述:

CALL FUNCTION IN BACKGROUND
TASK

队列RFC:qRFC

队列卡宴FC(queued Remote Function
Call,qGL450FC卡塔 尔(英语:State of Qatar)是tQashqaiFC的二个扩大。它同意你将多个tQashqaiFC调用种类化为多少个系列。

qOdysseyFC调用会首先被函数模块T本田UR-VFC_SET_QUEUE_NAME进行体系化管理,然后那些调用被贰个t奥德赛FC实行实际的dispatch。

q兰德陆风X8FC能够看做外向队列(由调用系统连串化卡塔尔管理,或许是内向队列(由被调用系统系列化卡塔 尔(阿拉伯语:قطر‎。

* *

以下是二种职业数据传输的气象(为何图片中的文字是德文?卡塔尔:

亚洲必赢手机 3

场景1:tRFC

本场所适用于数据互相间独立发送的情事。系统第11中学存在二个调用应用(client卡塔尔使用t安德拉FC连接系统第22中学的被调用应用(r
server)。在这场景中,数据由t福睿斯FC传输,意味着发送到指标类其余函数模块调用会被保障只运营贰遍。你不能定义函数模块运转的黄金时代生机勃勃和岁月。借使传输进程中发出了不当,系统会安排四个后台作业,在15分钟后再一次发送函数模块调用。

场景2:带有外向队列的q奥迪Q7FC

在这一场景中,发送系统使用多个活蹦活跳队列来种类化被发送的数目。那表示发送系统的活跃队列包蕴着存在依赖关系的函数模块调用。当数码发送时,会维持分明的次第,何况调用会以恰好三次且有序的秘技(exactly once in order卡塔 尔(阿拉伯语:قطر‎发送给目的体系。

小心:目的类别管理时无需改良q卡宴FC的生龙活虎大器晚成,不过,它必得拉开t普拉多FC功用。

现象3:带有内向队列的qENCOREFC(以致活跃队列卡塔尔

在此个处境下,不止发送系统(client卡塔尔国有外向队列,指标种类也许有内向队列。假使q本田CR-VFC存在有内向队列,那也意味它在发送系统上必定会将存在外向队列。内向队列在生机勃勃段时间里只可以管理系统能源允许管理的函数模块调用数量。它可以免御服务器被三个顾客端梗塞。独有在劳动系统独立存在四个内向队列的气象是不容许存在的,因为急需在顾客端系统存在外向队列,来设置顺序并截留单独的行使堵塞客户端系统的满贯办事历程。

更加多相关消息可知:

后台RFC:bgRFC

使用

bgCR-VFC(Background Remote Function
Call卡塔 尔(英语:State of Qatar)允许被调用程序稍晚一些选拔数据,实际不是同台选择。接收数据的时候,供给保险数据只现出叁遍且冬季(
transactional) 、只怕只现出贰遍且有序(queued)。

利用bg君越FC进行异步调用,会有如下优势:

  • 在同一个SAP系统内(同三个种类ID,同多个client卡塔 尔(阿拉伯语:قطر‎:解耦,同期提供了并行化技艺。负载会布满在该系统的可用的应用服务器上。这么些bg福睿斯FC场景被视作多个内向程序。

  • 在三个远程SAP系统间:解耦,况且经过能够完结利用或作业场景的概况细分。异步调用的结果是,调用者和被调用者的应用服务器的首要天性差距足以拿走平衡。记录工作在调用系统中做到。那一个场合是一个活蹦活跳程序。

  • 三个程序结合为外-内程序:该办法得以收获任何优化增选的优势。然则,若是你筛选了这么做,数据会被记录两遍,二回是调用者(外向管理卡塔尔国、三遍是被调用应用(
    内向程序的优异类型卡塔 尔(阿拉伯语:قطر‎。这形成数据库、应用服务器会有额外的担负。

bg瑞鹰FC使用队列协会差异的调用。当多个调用同一时间被停放在几个种类的时候,系统会为那么些队列创立重视。那带给了一个同步点(synchronization
point卡塔 尔(英语:State of Qatar),相仿于锁。

只要叁个调用项于信赖队列中,那么当且仅当它放在信任队列的最上层时,它才会被拍卖。

对于同三个destination,不得以将bgLacrosseFC和tENVISIONFC、qLANDFC结合起来使用。然则,对于不一致的destination,你能够定义你想选取的广播发表类型。

语法:

 CALL FUNCTION 'function_name'

IN BACKGROUND UNIT unit

          EXPORTING ... 

 

集成

从qXC60FC转变为bg宝马X5FC的应用程序,必需支持创制qMuranoFC中的队列与bg哈弗FC中的队列之间的不时链接的搬迁方案。通过如此的方案,能够保险科学的连串顺序,即就是在从qLX570FC变为bg奥迪Q5FC的随即。

在意:从bg安德拉FC改回qEscortFC是不容许的。

在SAP NetWeaver Release
7.11甚至更加高的本子上,bgPAJEROFC也足以和basXML(二进制ABAP系列化XML卡塔尔国通讯公约一齐利用。

架构

历史观的qQX56FC模型仅有在数额被英菲尼迪Q60FC调整程序管理的时候才探测各样独立单元之间的正视性关系。对于每种destination,外向调解程序都会张开一个调治程序来拍卖那个destination的数量。

与之绝对的是,bg锐界FC的依据关系在数码存储的时候就决定了。通过如此做,PRADOFC调治程序可以一回性找到全数的须求被拍卖的单元,并且经过最小的不竭(minimum
effort卡塔 尔(阿拉伯语:قطر‎就能够找到它们之间的信赖关系。在存款和储蓄数据的时候须要提交的附加努力,则能够在不小程度上由数据库设计中的高效能算法和优化补偿。

每种客户端定义一定数量的活泼安排,何况并行管理队列负载,尽管目的连串的负载会在三个异常的短的年月间隔后被鲜明,不过也由此会进一层标准。

单元和队列的删除程序

和观念的程序区别,假若有此外单元或队列被去除,重视依旧会维持。因为单元会被先打上标识,并且在这里之后只是被调治程序删除。

亚洲必赢手机 4

如图,在剔除了Unit4之后,Unit6只可以在Unit3之后运转,因为Unit4唯有在调治程序管理过Unit3之后才会被剔除。倘若你剔除掉queue2,那么会爆发下边包车型大巴场合:

亚洲必赢手机 5

Unit6会在Unit2之后运维,全体选定的unit都会被调节程序删除。

小心:删除队列或许单元总是有着高危害的。在我们的例子里,它会形成Unit6遇到错误,或许引致目标系列的数据库不形似,因为它的前提Unit4因为被去除而未有运营。

Gateway:Gateway是另四个私人民居房的性质瓶颈,在bgEscortFC中,它也得到了优化。bgOdysseyFC中的新的定义是会调养在大器晚成台应用服务器上还要运维的龙精虎猛调治程序的最大数据,也会调护医疗全部CRUISERFC调解程序可用的最菲尼克斯接数。那一个约束会爱戴当地的Gateway使之不至于过载。

每种发送系统的并行的活跃调整程序数量和它们的最明斯克接数也是可安排的,由此对此destination的Gateway也存在过载爱慕。

品质的震慑:新bg传祺FC得以完结的优化在高负荷、多信任的景观下极其扎眼。第二遍运维的时候,线性对数可伸缩性(a
linear logarithmical
scalability卡塔尔国的瑞虎FC数据管理成为只怕(视系统包容性而定卡塔 尔(阿拉伯语:قطر‎。

函数队列的事体特性使得,在管理单独的单元时,bgMuranoFC不太轻易获得显然的习性提高,可是在动用越来越多还是更加快的硬件的时候,则能够显明升高吞吐量。约束因素会是数据库的天性和这几个单元的管理速度。

除此以外,新的API也是优化的风度翩翩有的。一些余下的函数被移除,有些旧的API也不再行使。这使得相关的干活尤其平整和有功用,减弱扶植协会和开采团队的职业量。

更加多新闻:

越多关于bgCR-VFC的音讯, 请看:

本地数据队列:LDQ

地面数据队列(Local Data Queue
卡塔尔国是风流倜傥种特意的库罗德FC通讯。在这里种利用情状下,系统不会主动发送数据。相反,依据拉取准则,系统会把数据存款和储蓄在该地,直到被表面系统调用(比方移动设备卡塔尔国。

LDQ能够代表原先由qRAV4FC在不发送场景下提供的功用(qGL450FC No
Send卡塔 尔(英语:State of Qatar)。相比较之下它提供了更有功效的数据模型。

更加的多内容:

Local Data Queue
(LDQ)

名词对照

scheduler:调整程序

outbound  queue:外向队列

inbound queue:内向队列

 

有关文章:ABAP
CR-VFC远程调用

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图