Vbscript 在SAP的多个选择屏幕中加载值

Vbscript 在SAP的多个选择屏幕中加载值,vbscript,sap-gui,Vbscript,Sap Gui,尝试使用SAP Gui脚本自动化流程,其中需要在SAP的多个选择屏幕中粘贴多个值 我将无法使用,从剪贴板粘贴,因为在执行此操作时,剪贴板内容将发生更改。当我录制从文件导入选项时,命令未被录制。有没有办法做到这一点 session.findById("wnd[0]").maximize session.findById("wnd[0]/tbar[0]/okcd").text = "/nfs10n" session.findById(&q

尝试使用SAP Gui脚本自动化流程,其中需要在SAP的多个选择屏幕中粘贴多个值

我将无法使用,
从剪贴板粘贴
,因为在执行此操作时,剪贴板内容将发生更改。当我录制
从文件导入
选项时,命令未被录制。有没有办法做到这一点

session.findById("wnd[0]").maximize
session.findById("wnd[0]/tbar[0]/okcd").text = "/nfs10n"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/usr/btn%_SO_BUKRS_%_APP_%-VALU_PUSH").press

'  **The import from file command should go here.**

session.findById("wnd[1]/tbar[0]/btn[24]").press
session.findById("wnd[1]/tbar[0]/btn[8]").press
我尝试了
CopyText
命令,但它没有按预期工作,尽管不确定原因

Copytext fromFile="myfile.txt" toText="t1"
Copytext fromText="t1" -toclipboard

有什么方法可以做到这一点吗?就像在使用“从剪贴板粘贴”命令之前将文件读入剪贴板一样。。。目前大约有3000个这样的行项目,通过循环这些行项目可以使脚本长时间运行。

问题的解决方案在于SAP GUI脚本的设置。应禁用/停用所有三个选项以供选择。特别是“微软视窗的对话框显示”。然后,您还可以录制按钮23并关闭按钮24

另外,“CopyText”命令来自GuiXT,无法在VB脚本中轻松应用

问候,,
ScriptMan

问题的解决方案是SAP GUI脚本设置。应禁用/停用所有三个选项以供选择。特别是“微软视窗的对话框显示”。然后,您还可以录制按钮23并关闭按钮24

另外,“CopyText”命令来自GuiXT,无法在VB脚本中轻松应用

问候,, ScriptMan

如果选择“显示Microsoft Windows的本机对话框”未处于活动状态,则脚本可能如下所示:

session.findById("wnd[0]/usr/btn%_S_RECNNR_%_APP_%-VALU_PUSH").press
session.findById("wnd[1]/tbar[0]/btn[23]").press
session.findById("wnd[2]/usr/ctxtDY_PATH").text = "z:\"
session.findById("wnd[2]/usr/ctxtDY_FILENAME").text = "test.txt"
session.findById("wnd[2]/usr/ctxtDY_FILENAME").caretPosition = 8
session.findById("wnd[2]/tbar[0]/btn[0]").press
session.findById("wnd[1]/tbar[0]/btn[8]").press
如果选择“显示Microsoft Windows的本机对话框”未处于活动状态,则脚本可能如下所示:

session.findById("wnd[0]/usr/btn%_S_RECNNR_%_APP_%-VALU_PUSH").press
session.findById("wnd[1]/tbar[0]/btn[23]").press
session.findById("wnd[2]/usr/ctxtDY_PATH").text = "z:\"
session.findById("wnd[2]/usr/ctxtDY_FILENAME").text = "test.txt"
session.findById("wnd[2]/usr/ctxtDY_FILENAME").caretPosition = 8
session.findById("wnd[2]/tbar[0]/btn[0]").press
session.findById("wnd[1]/tbar[0]/btn[8]").press

我也这么做了,我能记录下按钮23。。。但是,我无法在Windows对话框中提供文件名。。。宏只是在那里暂停,直到用户点击“打开”按钮。我也这样做了,我能够录制按钮23。。。但是,我无法在Windows对话框中提供文件名。。。宏在那里暂停,直到用户单击“打开”按钮。你能帮我吗。。我怎么关掉它?“显示Microsoft Windows的本机对话框”本地布局更改的ALT/F12=>Options=>Scripting Support=>请参见上文您能帮助我吗。。我怎么关掉它?“显示Microsoft Windows的本机对话框”本地布局更改的ALT/F12=>选项=>脚本支持=>请参见上文