ITPub博客

使用Excel调用ABAP系统的函数

原创 CRM 作者:i042416 时间:2018-05-10 14:25:25 0 删除 编辑

效果:在excel里创建一个按钮,开发一些VB script,可以连接指定的ABAP系统并执行系统里的ABAP function module。

在这里例子里执行ABAP系统的函数TH_USER_LIST, 把当前系统登录的用户取回来显示在excel里。

该按钮的点击响应函数实现代码:

Sub CommandButton1_Click()
    Set R3 = CreateObject("SAP.Functions")
    Set myConnction = R3.Connection
    myConnction.ApplicationServer = "ag3.xxx.sap.corp" myConnction.SystemNumber = 54 myConnction.Client = "001" myConnction.user = "WANGJER" myConnction.Password = "your password" If myConnction.Logon(0, True) <> True Then
      MsgBox "Logon failed" Exit Sub
    End If Dim callFunctionModule As Object
        
    Set callFunctionModule = R3.Add("TH_USER_LIST")
    callFunctionModule.Call If callFunctionModule.Exception <> "" Then
        MsgBox callFunctionModule.Exception End If If callFunctionModule.Call = True Then
        Dim result As Object
        Set result = callFunctionModule.tables("USRLIST")
        Dim aSheet As Worksheet
        Dim sheetCol As New Collection
        sheetCol.Add ActiveWorkbook.Sheets(1) For Each aSheet In sheetCol
            Dim i As Integer
            i = 1 For Each user In result.Rows
                
                Client = user(2)
                UserName = user(3)
                Terminal = user(5)
                IP = user(16)
                aSheet.Cells(i, 1) = Client
                aSheet.Cells(i, 2) = UserName
                aSheet.Cells(i, 3) = Terminal
                aSheet.Cells(i, 4) = IP
                
                i = i + 1 Next
        Next Else MsgBox " Call Failed! error: " End If 'log off
    myConnction.logoff
End Sub 

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

请登录后发表评论 登录
全部评论

注册时间:2018-01-20

  • 博文量
    344
  • 访问量
    72575