点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我是的,我使用sapGui 7.40,并尝试通过sq01中的查询创建用于提取数据的自动脚本。
一切正常,但我无法保存文件路径和名称。
这是我的示例脚本:
如果不是IsObject(application),则
设置SapGuiAuto = GetObject(" SAPGUI")
设置应用程序= SapGuiAuto.GetScriptingEngine
如果,如果不是IsObject(connection),则
结束 连接= application.Children(0)
如果不是IsObject(session),则结束
设置会话= connection.Children(0)
如果,如果是IsObject(WScript),则结束。 br> WScript.ConnectObject会话,"在"上
WScript.ConnectObject应用程序,"在"上结束If
session.findById(" wnd [0]")。maximize
session.findById(" wnd [0]/tbar [0]/okcd")。text =" sq01"
session.findById(" wnd [0]")。sendVKey 0
session.findById(" wnd [0]/mbar /menu[5]/menu[0]").select
session.findById(" wnd [1]/usr/radRAD1")。select
session.findById(" wnd [1]/tbar [0 ]/btn [2]")。press
session.findById(" wnd [0]/tbar [1]/btn [19]")。press
session.findById(" wnd [1]/usr /cntlGRID1/shellcont/shell").currentCellRow = 28
session.findById(" wnd [1]/usr/cntlGRID1/shellcont/shell")。firstVisibleRow = 18
session.findById(" wnd [1]/usr/cntlGRID1/shellcont/s 地狱")。selectedRows=" 28"
session.findById(" wnd [1]/usr/cntlGRID1/shellcont/shell")。doubleClickCurrentCell
session.findById(" wnd [0]/usr/cntlGRID_CONT0050/shellcont/shell")。selectedRows =" 0"
session.findById(" wnd [0]/usr/cntlGRID_CONT0050/shellcont/shell")。doubleClickCurrentCell
session.findById(" wnd [0]/tbar [ 1]/btn [8]")。press
session.findById(" wnd [0]/usr/ctxtSP $ 00005-LOW")。text =" zpf"
session.findById(" wnd [0] /usr/ctxtSP$00006-LOW").text =" mp01"
session.findById(" wnd [0]/usr/ctxtSP $ 00006-LOW")。setFocus
session.findById(" wnd [0] /usr/ctxtSP$00006-LOW").caretPosition = 4
session.findById(" wnd [0]/tbar [1]/btn [8]")。press
session.findById(" wnd [0 ]/usr/cntlCONTAINER/shellcont/shell")。pressToolbarContextButton"&MB_EXPORT"
session.findById(" wnd [0]/usr/cntlCONTAINER/shellcont/shell")。selectContextMenuItem"&XXL"
session.findById( " wnd [1]/usr/radRB_OTHERS")。setFocus
session.findById(" wnd [1]/usr/radRB_OTHERS")。select
session.findById(" wnd [1]/usr/cmbG_LISTBOX" ) .key =" 10"
session.findById(" wnd [1]/tbar [0]/btn [0]")。按
谁能帮助我?
你好罗伯托,
SAP GUI脚本无法处理本机Windows对话框。
首先,请确保SAP登录中的本机对话框选项已禁用。
如果禁用它,则可以使用AutoIt,或者需要棘手的VBScript机制来处理本机对话框。 您可以在此处找到不同的示例 和此处。
让我们知道您的结果。
干杯
斯特凡
你好罗伯托,
这里是如何使用GOS的示例
对于我来说,我会看到一个可编写脚本的对话框来导入文件。
这是带有本机Windows对话框的示例。
如您所见,在打开本机对话框之前,我先启动一个异步VB脚本来填充对话框。
如您所见,AppActivate搜索标题" Datei importieren"(德语为文件导入),并且Sendkeys类型为Alt + n(这表示Dateiname(文件名)的下划线)和文件名Test.txt。 注释行还按Alt + f(这表示Öffnen(打开)的下划线)以关闭对话框。
此后,您的VBA代码将在%GOS_PCATTA_CREA之后继续运行。
让我们知道您的结果。
干杯
Stefan
感谢Stefan。 我已经取消选中对话框中的选项。
您知道是否可以通过脚本进行操作或我需要:
Excel VBA->调用sap事务--->设置名称文件的保存路径?
您有什么例子吗? 在您的链接,我看到打印或导入文件。 我可以吸引人,但会自动设置一条路径。
对不起,我的英语不好
你好罗伯托,
抱歉,我的回复延迟。
对您的问题:
session.FindById(" wnd [0]/titl/shellcont/shell")。SelectContextMenuItem"%GOS_PCATTA_CREA"
fillfilename启动并行任务< br>是,这是fillfilename。
如果您的GOS使用可编写脚本的对话框,则可以使用第一个示例,否则可以使用第二个示例。
让我们知道您的结果。
干杯
斯特凡
感谢斯特凡
我有2个问题:
1-您的示例是写在摘要上还是Excel宏内?
2-fillfilename.vbs是您的最后一个代码?
这是fillfilename吗?
'-Begin ------------------------------------------------------------ ---------------------
设置wshShell = CreateObject(" WScript.Shell")
执行
WScript.Sleep 500 <循环> 直到wshShell.AppActivate(" Datei importieren")= True
wshShell.Sendkeys"%nTest.txt"
'wshShell.Sendkeys"%nTest.txt%f"
'-结束----- -------------------------------------------------- ------------
如果我尝试您的第一个示例,则对此" session.FindById(" wnd [1]/usr/ctxtDY_FILENAME")。Text =" Test.txt""
有问题而且我不知道我必须将其放在脚本中的哪个位置。
谢谢
你好阿格内斯·凯斯马克伊,
没有必要两次问您一个问题。/p>
https://answers.sap。 com/questions/13068673/sap-spreadsheet-export-with-non-scriptable-window.html
最诚挚的问候
Stefan
一周热门 更多>