c#通過RFC調用SAP接口程序之輸入輸出參數案例


第一步需要引入相應的dll,如果版本不一致,會出現引用不成功。我用的是 net4.0

第二步     using SAP.Middleware.Connector;

第三步 :編碼如下

 #region           
        // ERP交互設計開始    kele

        IDestinationConfiguration ID = new RfcConfig();
        RfcDestinationManager.RegisterDestinationConfiguration(ID);    //告訴 RFC管理器  注冊目的地配置
        RfcDestination prd = RfcDestinationManager.GetDestination("PRD_000");// 獲得目的對象
        // RfcDestinationManager.UnregisterDestinationConfiguration(ID);        //注銷RFC管理器目的地配置  NET2.0 需要取消注釋 
        RfcRepository repo = prd.Repository;
        IRfcFunction companyBapi = repo.CreateFunction("ZMM_ABC_GET_ZTERM");   //調用函數名

        try
        {
            companyBapi.SetValue("I_LIFNR", "" + TextBox1.Text.Trim() + "");    //SAP輸入參數
            companyBapi.Invoke(prd);   //執行函數

            Label1.Text = companyBapi.GetString("TEXT1");       //SAP輸出參數
        }
        catch (RfcAbapException ex)  //此Exception專門用於獲取用戶自定義的異常信息!!!!
        {
            JavaScript.Alert(companyBapi.Metadata.GetAbapException(ex.Key).Documentation);
        }
        catch (RfcAbapRuntimeException ex)   //此Exception專門用於獲取RFC執行過程中的運行時異常!!!!
        {
            JavaScript.Alert(companyBapi.Metadata.GetAbapException(ex.Key).Documentation);
        }
        catch (RfcBaseException ex)  //此Exception是總Exception類,可以獲取所有的異常,如果有多個Catch,則不可以放第一位!!!!
        {
            JavaScript.Alert("請購單單號不存在或者SAP數據庫連接出錯!信息如下:" + ex.Message);

        }

        //ERP交互設計結束
        #endregion

 


免責聲明!

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



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