SAP B1-開發學習-1 創建Web service并連接SAP B1實現系統登錄
發表于:2018/3/21 11:26:36??閱讀量: [關閉]
通過本文我們將學會如何使用ASP.NET 創建Web service 并使用SAP B1提供的DI API 連接至SAP B1實現系統的登陸,關于Web service 的概念和其他基本操作不再贅述,如果有不清楚的請詢問度娘。
說明:
SAP B1版本: 9.2 PL06
開發工具:Microsoft Visual Studio 2010
開發語言:C#
.NET版本:4.0
如果您沒有時間跟著步驟操作,可以在文章末尾直接下載文件。
操作步驟
創建WebService
1、打開VS2010,菜單 文件->新建->項目。
2、選擇【ASP.net 空web應用程序】,并修改名稱。
3、右鍵點擊工程,添加->新建項,選擇 web服務。根據需求命名服務名稱。
4、打開“.asmx.cs”文件,我們可以看到如下內容,“HelloWorld”是系統給的示例。
5、單擊運行我們可以在瀏覽器中看到如下內容,先是一個方法目錄,單據對應的方法進入具體頁面,單擊調用,調用該方法,如無需數據參數則會直接返回結果。
添加引用
1、右擊“引用”-->“添加引用”
2、選擇“COM”,在右上角的搜索欄中輸入“DI API” ,選擇“SAP Business One DI API Version 9.0”(9.0、9.1、9.2都選擇該版本,其他版本請根據實際情況選擇),單擊“Add”。
添加方法
請在 HelloWorld 方法后添加如下方法,當然也可以替換HelloWorld方法。
注:代碼中我已經盡可能的添加注釋,如果仍有不明白的可以在底部評論區提問,我會進行答復,同時也方便更多的人閱讀,謝謝。
// 登陸SAP賬套 [WebMethod] public string ConnetSAP(string CompanyDB, string UserName, string PassWord)
{ //定義一個新的公司對象 SAPbobsCOM.Company oCompany;
//定義一個變量 int lRetCode;
//公司對象的初始化。
//創建一個新的公司對象 oCompany = new SAPbobsCOM.Company();
//-------設置連接數據庫---------//
//數據庫服務器名(需要與SLD中的“Server Name”一致) oCompany.Server = "SAPB1";
//數據庫類型 oCompany.DbServerType = SAPbobsCOM.BoDataServerTypes.dst_MSSQL2008;
//數據庫用戶名和密碼 oCompany.DbUserName = "sa"; oCompany.DbPassword = "B1asdf";
//-------SAP連接的設置---------//
//SAP許可服務器設置(IP、計算機名均可) oCompany.LicenseServer = "SAPB1:30000";
//公司語言設置 oCompany.language = SAPbobsCOM.BoSuppLangs.ln_Chinese;
//公司選擇 oCompany.CompanyDB = CompanyDB;
//公司用戶名和密碼設置 oCompany.UserName = UserName; oCompany.Password = PassWord;
//系統返回的操作信息代碼 lRetCode = oCompany.Connect();
///////////////////////////////
//根據SAP返回代碼返回不同的信息,當然也可以直接返回//
//如果返回代碼不是0則說明發生異常 if (lRetCode != 0) { //如果連接失敗,返回錯誤編號和錯誤描述 int temp_int; string temp_string; oCompany.GetLastError(out temp_int, out temp_string); return temp_int + "_" + temp_string; } //否則操作成功 else { //如果連接成功,提示成功連接 return lRetCode+"_已成功連接" + oCompany.CompanyName; } }
調試
1、單擊工具欄中的“啟動調試”。
2、在自動打開的頁面中選擇“ConnetSAP”。
3、數據相關參數,并單擊“調用”查看結果。
注:如果在單擊“調用”后返回的錯誤信息為“-10_ - 找不到映像文件中指定的資源名。”請檢查你的Sql服務器名稱是否正確。
發布
1、方法寫完后,右擊項目-->發布。
2、選擇【文件系統】發布,選擇發布后的文件夾地址,點擊【發布】即可。
3、在發布的文件夾中有如下文件。
4、打開IIS,建立網站(詳情請咨詢度娘)。
5、發布成功后如下圖所示,選中網站點擊“瀏覽”查看WebService是否正常。
注:如出現異常請百度解決。
文件下載
1、源碼下載。
2、程序下載。
通過本文我們將學會如何使用ASP.NET 創建Web service 并使用SAP B1提供的DI API 連接至SAP B1實現系統的登陸,關于Web service 的概念和其他基本操作不再贅述,如果有不清楚的請詢問度娘。
說明:
SAP B1版本: 9.2 PL06
開發工具:Microsoft Visual Studio 2010
開發語言:C#
.NET版本:4.0
如果您沒有時間跟著步驟操作,可以在文章末尾直接下載文件。
操作步驟
創建WebService
1、打開VS2010,菜單 文件->新建->項目。
2、選擇【ASP.net 空web應用程序】,并修改名稱。
3、右鍵點擊工程,添加->新建項,選擇 web服務。根據需求命名服務名稱。
4、打開“.asmx.cs”文件,我們可以看到如下內容,“HelloWorld”是系統給的示例。
5、單擊運行我們可以在瀏覽器中看到如下內容,先是一個方法目錄,單據對應的方法進入具體頁面,單擊調用,調用該方法,如無需數據參數則會直接返回結果。
添加引用
1、右擊“引用”-->“添加引用”
2、選擇“COM”,在右上角的搜索欄中輸入“DI API” ,選擇“SAP Business One DI API Version 9.0”(9.0、9.1、9.2都選擇該版本,其他版本請根據實際情況選擇),單擊“Add”。
添加方法
請在 HelloWorld 方法后添加如下方法,當然也可以替換HelloWorld方法。
注:代碼中我已經盡可能的添加注釋,如果仍有不明白的可以在底部評論區提問,我會進行答復,同時也方便更多的人閱讀,謝謝。
// 登陸SAP賬套 [WebMethod] public string ConnetSAP(string CompanyDB, string UserName, string PassWord)
{ //定義一個新的公司對象 SAPbobsCOM.Company oCompany;
//定義一個變量 int lRetCode;
//公司對象的初始化。
//創建一個新的公司對象 oCompany = new SAPbobsCOM.Company();
//-------設置連接數據庫---------//
//數據庫服務器名(需要與SLD中的“Server Name”一致) oCompany.Server = "SAPB1";
//數據庫類型 oCompany.DbServerType = SAPbobsCOM.BoDataServerTypes.dst_MSSQL2008;
//數據庫用戶名和密碼 oCompany.DbUserName = "sa"; oCompany.DbPassword = "B1asdf";
//-------SAP連接的設置---------//
//SAP許可服務器設置(IP、計算機名均可) oCompany.LicenseServer = "SAPB1:30000";
//公司語言設置 oCompany.language = SAPbobsCOM.BoSuppLangs.ln_Chinese;
//公司選擇 oCompany.CompanyDB = CompanyDB;
//公司用戶名和密碼設置 oCompany.UserName = UserName; oCompany.Password = PassWord;
//系統返回的操作信息代碼 lRetCode = oCompany.Connect();
///////////////////////////////
//根據SAP返回代碼返回不同的信息,當然也可以直接返回//
//如果返回代碼不是0則說明發生異常 if (lRetCode != 0) { //如果連接失敗,返回錯誤編號和錯誤描述 int temp_int; string temp_string; oCompany.GetLastError(out temp_int, out temp_string); return temp_int + "_" + temp_string; } //否則操作成功 else { //如果連接成功,提示成功連接 return lRetCode+"_已成功連接" + oCompany.CompanyName; } }
調試
1、單擊工具欄中的“啟動調試”。
2、在自動打開的頁面中選擇“ConnetSAP”。
3、數據相關參數,并單擊“調用”查看結果。
注:如果在單擊“調用”后返回的錯誤信息為“-10_ - 找不到映像文件中指定的資源名。”請檢查你的Sql服務器名稱是否正確。
發布
1、方法寫完后,右擊項目-->發布。
2、選擇【文件系統】發布,選擇發布后的文件夾地址,點擊【發布】即可。
3、在發布的文件夾中有如下文件。
4、打開IIS,建立網站(詳情請咨詢度娘)。
5、發布成功后如下圖所示,選中網站點擊“瀏覽”查看WebService是否正常。
作者:BlenderKou
來源:簡書
本文鏈接:SAP B1-開發學習-1 創建Web service并連接SAP B1實現系統登錄