VB.NET通过SAP.Connector调用SAP的RFC

'调用RFC
Dim myDest As New SAP.Connector.Destination
Dim myProx As New DEMO_GetData.SAPProxy1


Public Function SapStr(ByVal stype As Integer) As String
Dim str As String

'测试机
str = "用户名,密码,系统号,客户端号,IP地址"

Return str
End Function


Private Sub Main_Load(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles MyBase.Load

Try
myProx.Connection = SAP.Connector.Connection.GetConnection(myDest)
If (myProx.Connection.IsOpen = False) Then
Dim saps() As String = Split(SapStr(stype),",")
myDest.Username = saps(0)
myDest.Password = saps(1)
myDest.SystemNumber = saps(2)
myDest.Client = saps(3)
myDest.AppServerHost = saps(4)
myProx.Connection.open()
End If
Catch ex As Exception
WriteTxt("",ex.ToString)
End Try

Call Button5_Click(send,e)
End Sub

Private Sub Button5_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Button5.Click
Dim partner As String = TxtCustId.Text.ToString.Trim'参数
Try
'执行语句
Dim strID As String = ""
Dim strSyncState As String = ""


Dim rtTable As New Ecsms_GetData.YHYSDCSMS01Table'RFC上定义的表
myProx.POP_DEMOTEST(strID,rtTable,strSyncState)'执行RFC函数

'strSyncState 为Y表示RFC执行成功
If strSyncState = "Y" Then
Dim dtTable As New DataTable
dtTable = rtTable.ToADODataTable

Dim i As Integer
Dim sqllist As New ArrayList
Dim sql as string
For i = 0 To dtTable.Rows.Count - 1
sqllist.Add(sql)
Next

If execTrans(sqllist) = True Then LabNote.Text = "获取成功" Else LabNote.Text = "获取失败" End If Else LabNote.Text = "WRONG" End If '语句执行完毕 Catch ex As Exception WriteTxt("",ex.ToString) End TryEnd Sub

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...