SM59配置RFC

SAP与外部程序整合的方式有很多, 常见的有 :
1. Java Connector(Jco) or Java Resource Adapter(JRA)
2. .NET Connector
3. RFC Library
4. Business Connector
其他还有
1. OLE automation/ActiveX Control
2. ALE and IDOCs
3. SOAP Processor
4. SAP Data Tranfer Program
5. ITS
6. Netweaver XI
当然各种整合方式适用范围不同, 视整合的目的与策略来决定使用的整合方式

在Window环境与VB, C#等整合可以考虑.NET Connector的整合方式(其他如ActiveX Control也可以)

Steps:
1. .NET Program : 在SAP Gateway host注册
2. .NET Program : 被呼叫的程序功能X, 必须与SAP中的呼叫(caller)者,传递的参数互相匹配
3. SAP Program : 包含Call Function X Destination Y
4. .NET Program : 执行程序并传回结果到SAP
程序不详细说明了, 请找到SAP .NET Connector的文件好好Study就会了

而SM59设定的方式:
方法一 : 在SAP Gateway注册RFC Server (就是要被调用的程序)
建立Destination参数如下 :
Connection Type : T
Activate type : Registered Server Program
Program ID : 被呼叫的程序名称
Gateway host : host_x (就是SAP Application Server的host name)
Gateway Service : sapgw

方法二 : 有SAP Gateway启动RFC Server
建立Destination参数如下 :
Connection Type : T
Activate type : Start on Explicit Host
Program : ../rfcsdk/bin/srfcserv
Target host : host_y (.Net program所在的host name)
Gateway host: /H/host_x
Gateway Service : sapgw
除SAP端, .Net program端也有些设定要注意这些设定你也可以找到RFCSDK Guide的文件, 用力看一看

不用设定SM59就可以注册RFC server的方法 :
在RFC server端 :
在saprfc.ini中设定
DEST="xyz"
TYPR=R
PROGID=要执行的程序
GWHOST=sap gateway host
GWSERV=sap gateway service name...
然后在RfcOpenEx的参数中设定DEST="xyz"

或(.NET connector)用RFCServerConsole 选择 Properties → Configurationproperties → Debugging → Command Line Arguments :
rfcserv–aMYPROGID –gLOCALHOST –xSAPGW00 (例)
在SAP端的RFC call要呼叫RFC_SET_REG_SERVER_PROPERTY export parameter : EXCLUSIVE = 'Y'
然后用SM59测试联机,
用SMGW显示注册状态

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要调用 SAPRFC 接口,需要使用 SAP 提供的 Java Connector(SAP JCo)库。在使用 SAP JCo 调用 RFC 接口时,需要在 SAP JCo 的配置文件中设置系统 ID(System ID),以便正确地连接到 SAP 系统。 要配置 SAP JCo 的系统 ID,需要进行以下步骤: 1. 打开 SAP JCo 的配置文件 sapjco3.properties,该文件通常位于应用程序的 classpath 下。 2. 在 sapjco3.properties 文件中添加以下配置项: ``` jco.client.sysnr=<系统编号> jco.client.client=<客户端> jco.client.user=<用户名> jco.client.passwd=<密码> jco.client.lang=<语言> jco.client.ashost=<应用服务器主机名> jco.client.saprouter=<SAP 路由器> ``` 其中,<系统编号> 是 SAP 系统的编号,<客户端> 是 SAP 客户端的编号,<用户名> 和 <密码> 是 SAP 用户的登录信息,<语言> 是登录时使用的语言代码,<应用服务器主机名> 是 SAP 应用服务器的主机名,<SAP 路由器> 是可选的 SAP 路由器配置。 3. 在 Java 代码中使用 SAP JCo 的 API 调用 RFC 接口时,可以使用以下代码获取 SAP JCo 的配置信息: ``` JCoDestination destination = JCoDestinationManager.getDestination("<destination>"); ``` 其中,<destination> 是 SAP JCo 的目标名称,可以在 sapjco3.properties 文件中配置。 4. 使用 SAP JCo 的 API 调用 RFC 接口时,需要使用 SAP JCo 的函数模块名称和函数模块的输入参数,例如: ``` JCoFunction function = destination.getRepository().getFunction("<function_module>"); if (function == null) { throw new RuntimeException("<function_module> not found in SAP system."); } function.getImportParameterList().setValue("<parameter_name>", "<parameter_value>"); function.execute(destination); ``` 其中,<function_module> 是 SAP RFC 函数模块的名称,<parameter_name> 和 <parameter_value> 是函数模块的输入参数名称和值。 以上是 Java 调用 SAP RFC 接口时配置系统 ID 的基本步骤。具体的配置和调用方法可能会因不同的 SAP 系统和 RFC 接口而有所不同,需要根据实际情况进行调整和修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值