2.创建连接SAP需要的配置类,代码如下:
成都创新互联公司长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为承德县企业提供专业的成都做网站、网站设计、外贸营销网站建设,承德县网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using SAP.Middleware.Connector;
using System.Configuration;
namespace SapInterface
{
public class BackendSAPConfig : IDestinationConfiguration
{
#region 重写接口中的方法,获得SAP相关配置信息
public RfcConfigParameters GetParameters(string destinationName)
{
if (destinationName.Equals("TEST"))
{
RfcConfigParameters parms= new RfcConfigParameters();
parms.Add(RfcConfigParameters.AppServerHost, ConfigurationManager.AppSettings["ServerHost"]); //SAP主机IP
//parms.Add(RfcConfigParameters.SystemID, ConfigurationManager.AppSettings["SystemID"]);//系统ID parms.Add(RfcConfigParameters.SystemNumber, ConfigurationManager.AppSettings["SystemNumber"]);//SAP实例 parms.Add(RfcConfigParameters.User, ConfigurationManager.AppSettings["User"]);//用户名 parms.Add(RfcConfigParameters.Password, ConfigurationManager.AppSettings["Password"]);//密码 parms.Add(RfcConfigParameters.Client, ConfigurationManager.AppSettings["Client"]);// Client parms.Add(RfcConfigParameters.Language, ConfigurationManager.AppSettings["Language"]);//登陆语言 parms.Add(RfcConfigParameters.PoolSize, ConfigurationManager.AppSettings["PoolSize"]);
//parms.Add(RfcConfigParameters.MaxPoolSize, "10");已过时,被PeakConnectionsLimit替代 parms.Add(RfcConfigParameters.PeakConnectionsLimit, ConfigurationManager.AppSettings["PeakConnectionsLimit"]);
//parms.Add(RfcConfigParameters.IdleTimeout, "60"); return parms;
}
else
{
return null;
}
}
#endregion #region 实现接口中的方法
public bool ChangeEventsSupported()
{
return false;
}
public event RfcDestinationManager.ConfigurationChangeHandler ConfigurationChanged;
#endregion
}
}
3.主要一些方法如下
View Code public void nco()
{
IDestinationConfiguration config= new BackendSAPConfig();//实例化SAP接口配置类 RfcDestinationManager.RegisterDestinationConfiguration(config);//注册 RfcDestination prd = RfcDestinationManager.GetDestination(destinationName.ToUpper());//传入参数获得连接配置 nco(prd);
//注意,反注册在NCO 3.0.7.0版本中需要放在nco(prd)后面,而在NCO 3.0.1.0放在nco(prd)前面也行 RfcDestinationManager.UnregisterDestinationConfiguration(config);//反注册
}