2020-09-06 05:55发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在使用VBA自动化SAP程序... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我正在使用VBA自动化SAP程序。
我使用SAP脚本记录了一些代码。 现在,我可以打开六个会话(SAP窗口),并在每个会话中放入一些数据。
我无法并行执行这些会话(一次运行所有会话)。 你能帮我吗?
谢谢,卢克
嗨,Luc,
以下示例可能会对您有所帮助:
Script_parallel_sessions.vbs:
如果不是IsObject(application)那么
设置SapGuiAuto = GetObject(" SAPGUI")
设置应用程序= SapGuiAuto.GetScriptingEngine
如果结束
如果不是IsObject(连接),则
设置连接= application.Children(0)
如果不是IsObject(session)那么
设置会话= connection.Children(0)
对于mysession = 0到5
设置会话= connection.Children(int(mysession))
session.findById(" wnd [0]")。maximize
session.findById(" wnd [0]/tbar [0]/okcd")。text ="/img/nreiscn"
session.findById(" wnd [0]")。sendVKey 0
session.findById(" wnd [0]/usr/ctxtS_BUKRS-LOW")。text =" 2000"
session.findById(" wnd [0]/usr/chkP_USEPTN")。setFocus
session.findById(" wnd [0]/usr/chkP_USEPTN")。selected = true
session.findById(" wnd [0]/usr/chkP_GRID")。selected = true
session.findById(" wnd [0]/usr/chkP_DSPBUP")。selected = true
session.findById(" wnd [0]/usr/ctxtSO_PARTN-LOW")。text =" 1"
session.findById(" wnd [0]/usr/ctxtSO_PARTN-HIGH")。text =" 1000"
session.findById(" wnd [0]/usr/chkP_DSPBUP")。setFocus
如果mysession <5,则为session.createSession
wscript.sleep 2000
'session.findById(" wnd [0]/tbar [1]/btn [8]")。按
'msgbox"会话:"&mysession&vbcr&"时间:"&时间,vbInformation + vbMsgBoxForeground,"注释"
set wshell = createobject(" Wscript.Shell")
wshell.run""" c:\ tmp \ Script_parallel_Sessions_1.vbs"""&""和mysession
下一个
Script_parallel_sessions_1.vbs:
如果cstr(mysession)= cstr(wscript.arguments(0)),那么
session.findById(" wnd [0]/tbar [1]/btn [8]")。按
msgbox"会话:"和mysession&vbcr和"时间:"和时间,vbInformation + vbMsgBoxForeground,"注释"
Script_seriell_sessions.vbs:
'set wshell = createobject(" Wscript.Shell")
'wshell.run""" c:\ tmp \ Script_parallel_Sessions_1.vbs"""&""&mysession
但是您也可以在此链接中寻找其他建议:脚本语言
此致
ScriptMan
最多设置5个标签!
嗨,Luc,
以下示例可能会对您有所帮助:
Script_parallel_sessions.vbs:
如果不是IsObject(application)那么
设置SapGuiAuto = GetObject(" SAPGUI")
设置应用程序= SapGuiAuto.GetScriptingEngine
如果结束
如果不是IsObject(连接),则
设置连接= application.Children(0)
如果结束
如果不是IsObject(session)那么
设置会话= connection.Children(0)
如果结束
对于mysession = 0到5
设置会话= connection.Children(int(mysession))
session.findById(" wnd [0]")。maximize
session.findById(" wnd [0]/tbar [0]/okcd")。text ="/img/nreiscn"
session.findById(" wnd [0]")。sendVKey 0
session.findById(" wnd [0]/usr/ctxtS_BUKRS-LOW")。text =" 2000"
session.findById(" wnd [0]/usr/chkP_USEPTN")。setFocus
session.findById(" wnd [0]/usr/chkP_USEPTN")。selected = true
session.findById(" wnd [0]/usr/chkP_GRID")。selected = true
session.findById(" wnd [0]/usr/chkP_DSPBUP")。selected = true
session.findById(" wnd [0]/usr/ctxtSO_PARTN-LOW")。text =" 1"
session.findById(" wnd [0]/usr/ctxtSO_PARTN-HIGH")。text =" 1000"
session.findById(" wnd [0]/usr/chkP_DSPBUP")。setFocus
如果mysession <5,则为session.createSession
wscript.sleep 2000
'session.findById(" wnd [0]/tbar [1]/btn [8]")。按
'msgbox"会话:"&mysession&vbcr&"时间:"&时间,vbInformation + vbMsgBoxForeground,"注释"
set wshell = createobject(" Wscript.Shell")
wshell.run""" c:\ tmp \ Script_parallel_Sessions_1.vbs"""&""和mysession
下一个
Script_parallel_sessions_1.vbs:
如果不是IsObject(application)那么
设置SapGuiAuto = GetObject(" SAPGUI")
设置应用程序= SapGuiAuto.GetScriptingEngine
如果结束
如果不是IsObject(连接),则
设置连接= application.Children(0)
如果结束
对于mysession = 0到5
如果cstr(mysession)= cstr(wscript.arguments(0)),那么
设置会话= connection.Children(int(mysession))
session.findById(" wnd [0]/tbar [1]/btn [8]")。按
msgbox"会话:"和mysession&vbcr和"时间:"和时间,vbInformation + vbMsgBoxForeground,"注释"
如果结束
下一个
Script_seriell_sessions.vbs:
如果不是IsObject(application)那么
设置SapGuiAuto = GetObject(" SAPGUI")
设置应用程序= SapGuiAuto.GetScriptingEngine
如果结束
如果不是IsObject(连接),则
设置连接= application.Children(0)
如果结束
如果不是IsObject(session)那么
设置会话= connection.Children(0)
如果结束
对于mysession = 0到5
设置会话= connection.Children(int(mysession))
session.findById(" wnd [0]")。maximize
session.findById(" wnd [0]/tbar [0]/okcd")。text ="/img/nreiscn"
session.findById(" wnd [0]")。sendVKey 0
session.findById(" wnd [0]/usr/ctxtS_BUKRS-LOW")。text =" 2000"
session.findById(" wnd [0]/usr/chkP_USEPTN")。setFocus
session.findById(" wnd [0]/usr/chkP_USEPTN")。selected = true
session.findById(" wnd [0]/usr/chkP_GRID")。selected = true
session.findById(" wnd [0]/usr/chkP_DSPBUP")。selected = true
session.findById(" wnd [0]/usr/ctxtSO_PARTN-LOW")。text =" 1"
session.findById(" wnd [0]/usr/ctxtSO_PARTN-HIGH")。text =" 1000"
session.findById(" wnd [0]/usr/chkP_DSPBUP")。setFocus
如果mysession <5,则为session.createSession
wscript.sleep 2000
session.findById(" wnd [0]/tbar [1]/btn [8]")。按
msgbox"会话:"和mysession&vbcr和"时间:"和时间,vbInformation + vbMsgBoxForeground,"注释"
'set wshell = createobject(" Wscript.Shell")
'wshell.run""" c:\ tmp \ Script_parallel_Sessions_1.vbs"""&""&mysession
下一个
但是您也可以在此链接中寻找其他建议:脚本语言
此致
ScriptMan
一周热门 更多>