Как получить идентификатор пользователя из открытого сеанса SAP?

#excel #vba #sap

#excel #vba #sap

Вопрос:

Мне нужно ввести идентификатор пользователя в код VBA.

Как на картинке:

введите описание изображения здесь

Я пытался

 UserId = Session.FindById("wnd[0]").User
 

Но это не удалось. Как правильно поступить?

Комментарии:

1. Я думаю, нам нужно немного больше информации, чтобы помочь с этим

2. Это Excel, который встроен в список ALV или какой-либо другой подключенный источник SAP? Вы показываете SAPGui, но как это взаимодействует с Excel?

Ответ №1:

Еще проще было бы:

 UserId = Session.Info.User
 

Ответ №2:

Это оказалось просто:

 Sub Getuser()



Dim SapGuiAuto
Dim SetApp
Dim Connection
Dim Session



Set SapGuiAuto = GetObject("SAPGUI")
Set SetApp = SapGuiAuto.GetScriptingEngine
Set Connection = SetApp.Children(0)
Set Session = Connection.Children(0)

Session.FindById("wnd[0]").Maximize
Session.FindById("wnd[0]/mbar/menu[4]/menu[11]").Select

MsgBox Session.FindById("wnd[1]/usr/txtSYST-UNAME").Text
Session.FindById("wnd[1]/tbar[0]/btn[0]").Press

End Sub