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显示注册状态
SM59配置RFC
最新推荐文章于 2024-07-09 14:54:24 发布