Как выполнить тихий вход SAP с SAPRouter в VBA? - PullRequest
1 голос
/ 28 апреля 2019

SAP GUI Версия: 740;EXCEL: 2016 (64X)

Я могу подключиться через VBA к SAP со следующим кодом (примерные параметры):

Dim sapLogon As SAPLogonCtrl.SAPLogonControl
Dim sapConn As SAPLogonCtrl.Connection

Public Sub Logon()
    Set sapLogon = New SAPLogonControl
    Set sapConn = sapLogon.NewConnection

       With sapConn
        .System = "PRP"                    
        .ApplicationServer = "123.456.789.12"     
        '.SAPRouter = "/H/123.456.789.24/S/3299/H/" 'comment this line
        .SystemNumber = "00"             '
        .Client = "100"
        .User = "user"
        .Password = "mypassword"
        .Language = "EN"
    End With

    Call sapConn.Logon(0, True) 

     If sapConn.IsConnected <> tloRfcConnected Then
       MsgBox "connectiong failed." & sapConn.IsConnected

       Exit Sub
     Else

     MsgBox "connecting successful"
    End If
End Sub

Я хочу подключить другой SID системы SAP: «P95», которыйне в том же domain.so, я использую параметр SAPRouter, удаляю строку комментария

 .SAPRouter = "/H/123.456.789.24/S/3299/H/" 'the value is copy form SAP GUI with 'P95'

он не может подключиться «P95», результат - «connectiong fail».8 '

Полагаю, причина в политике безопасности в' P95 '

, но странно, что если я изменю код:

Call sapConn.Logon(0,True)

на

Call sapConn.Logon(0,False)

, а также прокомментируйте строку

.SAPRouter = "/H/123.456.789.24/S/3299/H/" 

, затем выберите систему SAP: «P95» в диалоговом окне «Вход в систему SAP» и введите мой пароль,

он может войти в систему «P95»

Я также обнаружил, что вкладка «Сервер» имеет значения заполнения с первыми конфигами SAP SID (в моем SAP GUI много SAP SID)

ТАК, как решить эту проблему, или мы не можем подключитьсяSAP через этот путь.

Спасибо.

...