我尝试通过Python登录SAP,但在运行代码后,我收到以下错误
connection = application.OpenConnection("A101.TA2", True) File "<COMObject <unknown>>", line 3, in OpenConnection pywintypes.com_error: (-2147352567, 'Exception occurred.', (1000, 'saplogon', 'SAP Logon connection entry not found', None, 0, 0), None)
登录界面就像这个http://img1.imagehousing.com/0/sap-370961.png
我尝试了A101
,A101.TA2
A101.TA2 PRD / ERi TEN
作为连接名称,都失败了。什么是正确的连接名称?
import win32com.client
import sys
import subprocess
import time
def saplogin():
path = r"C:\Program Files (x86)\SAP\FrontEnd\SAPgui\saplogon.exe"
subprocess.Popen(path)
time.sleep(3)
SapGuiAuto = win32com.client.GetObject('SAPGUI')
if not type(SapGuiAuto) == win32com.client.CDispatch:
return
application = SapGuiAuto.GetScriptingEngine
if not type(application) == win32com.client.CDispatch:
SapGuiAuto = None
return
connection = application.OpenConnection("A101.TA2", True)
print('5')
if not type(connection) == win32com.client.CDispatch:
application = None
SapGuiAuto = None
return
session = connection.Children(0)
if not type(session) == win32com.client.CDispatch:
connection = None
application = None
SapGuiAuto = None
return
session.findById("wnd[0]/usr/txtRSYST-BNAME").text = "USERNAME"
session.findById("wnd[0]/usr/pwdRSYST-BCODE").text = "PASSWORD"
session.findById("wnd[0]").sendVKey(0)
saplogin()
我不使用Python,但我会在连接字符串中使用全名。
例如:
connection = application.OpenConnection("A101.TA2 PRD / Eri TEN", True)
此致,ScriptMan