0
点赞
收藏
分享

微信扫一扫

PROXY(一:同步调用)



Proxy分为两种,ABAP Proxy和JAVA Proxy。他们之间的不同不仅在于语言,ABAP Proxy在应用端(R/3等)生成的,JAVAProxy是从IR中生成的.JAR文件。但是它们都是依据message interface中的WSDL产生的。



        Proxy具有与message interface相同的属性:Inbound, Outbound, Synchronous, Asynchronous



ABAP Proxy之前,要用 RZ70去建立R/3与PI的连接。这里还可能需要用SM59去定义相应的RFC Destination。用SMGW可以在PI的端找到相应的Service。



      Table:SPROXSET,是用来设置SPROXY权限的,可以查找在这张表里查找自己是不是有权限。



      T-CODE:SPROXY就是在Application端生成PROXY的主要工具,在这之前,你需要在PI端设置好相应的Message Interface,SAP端才能根据Message Interface的WSDL生成ABAP Proxy。





          JAVAProxy相对简单,只要在Message Interface中右击相应的Message Interface,会有Java Proxy Generation选项,就可以自动生成JAVAProxy,.JAR文件,开发人员可以对其进行部署。





这里我不再对proxy做介绍,只是讲调用过程。






首先创建了功能函数,没必要是rfc。(当然,可以在proxy代理类内直接写功能代码,不推荐)



比如:创建外向交货单的fm: ZFM_IF_OUT_DELIVERY_CREATE_SLS





然后进入proxy创建代理





t-code:sproxy





进入如下初始:



​​

PROXY(一:同步调用)_linux

​​​
大概的层级如下:
​​​

PROXY(一:同步调用)_python_02

​​​

到 点开 service interfaces,



中文是



​​

PROXY(一:同步调用)_设计模式_03

​​





找到对应的代理(接口那边会告诉你具体名称),未生成的代理和已经生成的,图标是不一样的。





​​

PROXY(一:同步调用)_linux_04

​​



找到需要生成的代理,双击,提示如下界面,然后按要求填上就行了

​​​

PROXY(一:同步调用)_python_05

​​​
然后保存,然后激活。会提示如下:



这个时候双击proxy的 class,不是proxy name。
​​​

PROXY(一:同步调用)_c++_06

​​​
如果双击class提示什么不存在,说明没激活,全部激活就可以了



尽到类里面,双击method就行了。然后里面写代码。
​​​

PROXY(一:同步调用)_java_07

​​​

在里面实现功能代码即可
​​​

PROXY(一:同步调用)_设计模式_08

​​​

最后保存,激活即可。





如果接口有任何变动,记得激活后重新生成代理



​​

PROXY(一:同步调用)_c++_09

​​​
或者:
​​​

PROXY(一:同步调用)_java_10

​​​


这里需要注意的是参数,



传入参数,都是string类型的



然后需要根据名称,转换为咱们需要的类型,然后再去调用接口函数。



最后把返回结果转为string。再赋给代理





这是同步的,比较简单




举报

相关推荐

0 条评论