SAP接口編程之 NCo3.0系列(07) : 異常處理

基類:RfcBaseException

nco3.0中異常的基類是RfcBaseException, 繼承自ApplicationException。其他一些重要的異常類說明如下:

其他常見異常類

RfcCommunicationException

  • 繼承自RfcBaseException
  • 與后臺SAP系統(tǒng)通訊失敗時,引發(fā)此異常,比如網(wǎng)絡問題,SAP服務器沒有啟動等。

RfcLogonException

  • 繼承自RfcBaseException
  • SAP系統(tǒng)拒絕用戶登錄,比如密碼錯誤等引發(fā)的異常。

RfcInvalidParameterException

  • 繼承自RfcBaseException
  • 如果參數(shù)不存在,或者參數(shù)名不正確,會引發(fā)該異常。

RfcAbapBaseException

  • 繼承自RfcBaseException, 是Abap異常的基類

示例

using System;
using SAP.Middleware.Connector;

namespace NCo03
{
    public class ExceptionHandlingDemo
    {
        public void WriteTCPIC()
        {
            // the folowing lines will be added to TCPIC table in SAP system
            String[] lines = new String[] { 
                "輕輕的我走了,", 
                "正如我輕輕的來,",
                "我輕輕的招手,",
                "作別西天的云彩。"};

            try {
                RfcDestination dest = NCo02.DestinationProvider.GetDestination();
                IRfcFunction fm = dest.Repository.CreateFunction("STFC_WRITE_TO_TCPIC");

                IRfcTable tcpicData = fm.GetTable("TCPICDAT");
                tcpicData.Append(lines.Length); // insert lines according to lines.Length
                for (int i = 0; i < lines.Length; i++) {
                    tcpicData[i].SetValue("LINE", lines[i]);
                }

                fm.Invoke(dest);
            }
            catch (RfcCommunicationException ex) {
                // network problem
                System.Console.WriteLine(ex.ToString());
            }
            catch (RfcLogonException ex) {
                // user could not log on
                System.Console.WriteLine(ex.ToString());
            }
            catch (RfcAbapBaseException ex) {
                // ABAP excpeption
                System.Console.WriteLine(ex.ToString());
            }
        }
    }
}

說明

  • STFC_WRITE_TO_TCPIC函數(shù)將字串中插入到TCPIC表中,函數(shù)適合做演示之用
  • 如果插入table parameter的參數(shù)有規(guī)律,可以參考本例中的代碼

NCo3.0系列的參考文檔

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • s
    Piaggi閱讀 151評論 0 0
  • 劍橋很美,劍河從城市西門進入兜了一個弧形大圈從東北流出到烏斯河,劍橋大學各個學院被城市包圍分散在不同地點,學院里環(huán)...
    吳蕙蘭閱讀 374評論 0 0
  • 1 博爾赫斯曾說,“我寫作,不是為了名聲,也不是為了特定的讀者,我寫作是為了光陰流逝使我心安。” 我很喜歡這句話。...
    兔U閱讀 670評論 1 1
  • 太累了,請假休息了一天 準備放縱一天,陳不放過我,要我?guī)某靠赐热?,瞿晨前幾天摔了,腿上有淤青,問他怎么摔的?..
    瞿桂林閱讀 65評論 0 0

友情鏈接更多精彩內容