2013-04-25 88 views
0

我成爲一個錯誤代碼1001,SAP Remote錯誤?SAP通過RFC_CALL_TRANSACTION捕獲數據RFC VB

我GOOGLE了很多,但沒有找到任何東西。 也許有人知道這裏的問題是什麼。 即時通訊使用SAP 720

System.Runtime.InteropServices.COMException(0x000003E9):SAP遠程 函數調用貝 Microsoft.VisualBasic.CompilerServices.LateBinding.LateGet(對象o, 類型OBJTYPE,字符串名稱,對象[]指定參數時,字符串[] paramnames, 布爾[]回拷)貝 Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGet(對象 實例,類型類型,字符串成員名稱,對象[]參數,字符串[] ArgumentNames,類型[] TypeArguments,Boolean [] CopyBack)...

這裏是我的代碼:

Public FunctionCtrl As Object 
    Function login_Call() 
    Try 

     Dim conn As Object 
     FunctionCtrl = CreateObject("SAP.Functions") 
     conn = FunctionCtrl.Connection 


     conn.System = XXX 
     conn.ApplicationServer = XXX 
     conn.SystemNumber = XXX 
     conn.Client = "XXX" 
     conn.user = XXX 
     conn.Password = XXX 
     conn.Language = XXX 
     'needed for frontend dialog 
     conn.RfcWithDialog = True 

     'log on with logon dialog 
     If Not conn.Logon(0, 1) Then 
      Dim WsShell 
      Dim intText As Integer 
      WsShell = CreateObject("WScript.Shell") 
      intText = WsShell.Popup("Logon not succesful." & vbCrLf & _ 
           "will be closed automatically in one minute...", 60) 
      'conn = Nothing 
      Anmeldung_Call = False 
      Exit Function 
     End If 
     Anmeldung_Call = True 

    Catch ex As Exception 

     Anmeldung_Call = False 
    End Try 
    Me.Text = DateTime.Now.ToString() 
End Function 

Sub Open_IW73() 
    Dim BdcTable As Object 
    Dim RfcCallTransaction As Object 
    Dim Messages As Object 
    Dim count As Integer 

    'call transaction IW73 
    RfcCallTransaction = FunctionCtrl.Add("RFC_CALL_TRANSACTION") 
    RfcCallTransaction.Exports("TRANCODE") = "IW73" 
    RfcCallTransaction.Exports("UPDMODE") = "S" 
    BdcTable = RfcCallTransaction.Tables("BDCTABLE")..... 

的錯誤出現在這一行: 「RfcCallTransaction = FunctionCtrl.Add(」 RFC_CALL_TRANSACTION 「) 」

謝謝

回答

0

我已經有同樣的錯誤。人們提出了不同的修復方法,比如使用SAP.functions.Unicode。 這對我來說簡直就是改爲「RFC_CALL_TRANSACTION_USING」。我不確定這些命令之間的確切區別,所以請小心。到目前爲止,它一直在爲我工作。