其实这个标题也不准确,只是针对今天的东西做一个总结:
oa系统发送数据到SAP,它只显示了那个函数被成功调用RFC,那么被成功调用RFC,那就意味着它有三种方式,第一种方式是pi po,pi里面可以可以实现RFC调用,那么你就直接在pi里面去看。有没有这个RFC,因为被使用,至于怎么去看,你就点查找,点查找这个RFC,如果是Po就会在接口类里面被调用。那么第二个方式是直接调用RFC,那直接调用RFC是根本找不到的,因为它没有一个具体的url链接,它是可以用Java代码,通过配置直接调用RFC。最后一种就是webservice
去打开外部,外部服务器里面去查找这个实例就能查找到这个,通过这个RFC创建的这个服务对象是可以查到的,简单来说就是那么几种。
RFC它的定义,可以理解为Java里面的对象里面的一个方法,Java有三个属性,就是 集成 多态,它多态的原因是在于它可以使它可以使对象里面的一些属性,只能由内部调用,也可以使一些方法由外部调用,也就是它的多态。
那么RFC它的本质就是在于它创建了一个对象,这个对象里面的这个函数,它是可以被外部调用的,也就是它是一个公共的函数,所以它叫远程调用模块,所以它可以被远程调用,然后webservice,它必须要用RFC函数作为主体,因为它要接受外部的调用,所以说一般的函数是不能够,在创建webservice的时候作为主体的。
RFC,它叫远程调用函数,webservice是叫外部服务应用,这个是两码事,并不是说我建了一个RFC就可以被外界调用,它是需要用SM59去配置,配置SAP的连接可以配置SAP与SAP SAP与第三方,第三方与SAP,所以说这个是两种方式,两种传输的方式。
sm59是不是觉得很熟悉,在配置po的时候,sap 作为rfc类型的发送方的时候,就要用sm59进行一个配置,所以在什么样的情况下,我们会想到sm59这个事务代码呢:发送数据到某一个系统的时候,一定会去配置他的主机,系统标识等认证,如果不配置,数据如何发?发给谁?就没有目的性了。那么sm59他就相当于告诉你,你可以在我这里配置你得目标,你得目的是什么,每个目的会配置一些参数,好让我去链接目的地的时候可以认证通过,这就是sm59的作用。重点:要理解sm59是主动发,是你去配置你得目的地,不是别人调用你,你去配sm59。
在sm59里面,abap链接是指abap与abap之间的链接,tcp/ip是指abap与第三方之间的链接
但是为什么JAVA调用SAP端RFC接口的时候不用去sm59进行配置呢,很简单呀
JAVA调用SAP端RFC接口 - 信铁寒胜 - 博客园
看下面这个链接
java都已经把这些属性都弄好了,DESTINATION可以理解为快捷配置,简单说就是一个配置表,通过配置表这个配置完成后,下次链接就不用发送账号那些,通过DESTINATION进行转换 ,明天我将要亲自动手做一遍JAVA调用SAP端RFC接口,所以明天见罗