.net 調用SAP RFC的幾種方法


轉自:http://www.cherpservice.com/pub/newsdetail.asp?Newsid=3613


第一種方式采用SAP.net Connector:
最新版本是3.
01,不開源,不知道有沒有官方的技術支持。
從3.0版本開始,使用方法上開始跟2.0相差很大,不再需要生成代理類,
好處是一旦SAP RFC接口做了更改,不需要重新生成代理類。
凡是都有兩面性,這個好處也可以看做一個缺點:如果對RFC信息比較少,你不能用代理類的方式取得參數或者返回值的數據結構。 RfcConfigParameters parms
= new RfcConfigParameters(); parms.Add(RfcConfigParameters.MessageServerHost, SAP Server IP); parms.Add(RfcConfigParameters.GatewayHost, SAP Server IP); //parms.Add(RfcConfigParameters.GatewayService, SAP Server IP); parms.Add(RfcConfigParameters.SystemID, "SB6"); // Set actual System ID parms.Add(RfcConfigParameters.SystemNumber, "02"); //// Set actual System Number parms.Add(RfcConfigParameters.User, "test"); parms.Add(RfcConfigParameters.Password, "test"); parms.Add(RfcConfigParameters.Client, "120"); // Set actual client ID parms.Add(RfcConfigParameters.Language, "EN"); parms.Add(RfcConfigParameters.PoolSize, "5"); parms.Add(RfcConfigParameters.MaxPoolSize, "10"); parms.Add(RfcConfigParameters.IdleTimeout, "600"); RfcRepository repo = prd.Repository; IRfcFunction companyBapi = repo.CreateFunction(RFC Name); companyBapi.SetValue(Parameter name, value); companyBapi.Invoke(prd); object o = companyBapi.GetValue(return parameter name); Console.WriteLine(o);
第二種方式采用純粹的Biztalk Adapter.,不用Biztalk Server: 新建一個Console Application, 添加“add adapter service reference...”, 彈出下面的窗口         點擊Configuration配置好SAP Server的基本信息,包括服務器地址, System Number, Client, 訪問SAP的用戶名和密碼。 配置完后,測試連接是否OK, 如果沒有問題可以列出RFC,IDOC之類的SAP世界里的東東,過濾出需要的RFC 填入一個合適的文件名前綴,默認是SAPBinging,點擊OK生成一個WCF代理類,命名方式是 文件名前綴
+Client.cs, 這里是SAPBindingClient.cs。然后你肯定就知道該怎么用它了:)
第三種方式是用Biztalk Server
2010          具體步驟參考Biztalk Adapter的幫助文檔,需要注意的是,如上圖SendToLOBPort這個雙向Port包含的方法名稱"Operation_1"需要更改成RFC的名字或者修改Schema文件(參考 Troubleshooting Operational Issues): Change the operation name in the logical port in BizTalk orchestration from Operation_1, etc. to the operation for which you generate metadata, for example RFC_CUSTOMER_GET. Change the operation name in the action on the physical port to the operation name in the logical port. 計划下一步加上這三種方法的性能,並發,容錯測試分析。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM