如何使用Python脚本运行SAP?
目前,我正在研究如何在stackoverflow的帮助下使用python启动SAP脚本,但显然我的SAP没有打开连接页面,也就是我输入用户名和密码的页面。我相信如何使用Python脚本运行SAP?,python,sap,Python,Sap,目前,我正在研究如何在stackoverflow的帮助下使用python启动SAP脚本,但显然我的SAP没有打开连接页面,也就是我输入用户名和密码的页面。我相信DCG210是我的连接名,下面的图片显示了我在运行python代码后到达的位置。 另外,如果有任何人有任何关于使用Python学习SAP脚本的链接,我将不胜感激。谢谢大家! import win32com.client import sys import subprocess import time # This function w
DCG210
是我的连接名,下面的图片显示了我在运行python代码后到达的位置。
另外,如果有任何人有任何关于使用Python学习SAP脚本的链接,我将不胜感激。谢谢大家!
import win32com.client
import sys
import subprocess
import time
# This function will Login to SAP from the SAP Logon window
def saplogin():
try:
path = r"C:\Program Files (x86)\SAP\FrontEnd\SAPgui\saplogon.exe"
subprocess.Popen(path)
time.sleep(10)
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("DCG210", True)
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)
except:
print(sys.exc_info()[0])
finally:
session = None
connection = None
application = None
SapGuiAuto = None
saplogin()
如果您只需要登录SAP,您可以使用这个简单的代码段,而不需要输入密码
import subprocess
subprocess.check_call(['C:\Program Files (x86)\SAP\FrontEnd\SAPgui\\sapshcut.exe', '-system=DCG210', '-client=100', '-user=USERNAME', '-pw=PASSWORD'])
您的GUI脚本只登录到SAP,不做任何其他操作,它只是为了编写脚本而编写脚本。很抱歉,我在文件夹中没有找到名为sapshcut的文件。@wang这个问题怎么样,已经有解决方案了?我遇到了同样的问题