通过脚本注册和播放查找并选择所需的查询

2020-09-15 11:52发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好! 我最近在人力资源行业开始与SAP合作,第一个挑战是为Excel VBA创建一个宏,该宏可登录SAP,使用PAAH事务并打开/执行给定的查询并将生成的数据保存在工作表中。 优秀。 我可以通过SAP中的"脚本注册和播放"工具为VBA创建脚本,并且可以毫无问题地使用该宏。 但是我遇到了一个问题:在脚本播放中,它采用了我在录制时选择的行的值。 如果在此查询列表中添加了新查询,则我的查询索引将更改。 我的问题是,即使列表更改,如何始终找到所需的查询并执行它。 下面是通过注册和播放脚本获得的我正在使用的代码:

Session.findById(" wnd [0]")。maximize

Session.findById(" wnd [0]/tbar [0]/okcd")。Text ="/img/npaah"

Session.findById(" wnd [0]")。sendVKey 0

Session.findById(" wnd [0]/tbar [1]/btn [6]")。按

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_WORKSPACE")。SetFocus

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_WORKSPACE")。Key =" 1"

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_USERGROUP")。SetFocus

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_USERGROUP")。Key =" 102"

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES")。verticalScrollbar.Position = 2835

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES")。getAbsoluteRow(2837).Selected = True

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES/txtDYNP4300_TC_QUERIES-NAME [0,2]")。SetFocus

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES/txtDYNP4300_TC_QUERIES-NAME [0,2]")。caretPosition = 0

Session.findById(" wnd [1]/tbar [0]/btn [0]")。按

Session.findById(" wnd [0]/shellcont [0]/shell")。pressToolbarButton" GET_DATA"

Session.findById(" wnd [0]/shellcont [0]/shell")。pressToolbarContextButton"&MB_EXPORT"

Session.findById(" wnd [0]/shellcont [0]/shell")。selectContextMenuItem"&XXL"

Session.findById(" wnd [1]/usr/ctxtDY_PATH")。Text =" P:\ Desktop \ Teste"

Session.findById(" wnd [1]/usr/ctxtDY_FILENAME")。Text ="FUNCIONÁRIOS_SITUAÇÃO.XLSX"

Session.findById(" wnd [1]/usr/ctxtDY_FILENAME")。caretPosition = 13

Session.findById(" wnd [1]/tbar [0]/btn [11]")。按

(63.9 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好! 我最近在人力资源行业开始与SAP合作,第一个挑战是为Excel VBA创建一个宏,该宏可登录SAP,使用PAAH事务并打开/执行给定的查询并将生成的数据保存在工作表中。 优秀。 我可以通过SAP中的"脚本注册和播放"工具为VBA创建脚本,并且可以毫无问题地使用该宏。 但是我遇到了一个问题:在脚本播放中,它采用了我在录制时选择的行的值。 如果在此查询列表中添加了新查询,则我的查询索引将更改。 我的问题是,即使列表更改,如何始终找到所需的查询并执行它。 下面是通过注册和播放脚本获得的我正在使用的代码:

Session.findById(" wnd [0]")。maximize

Session.findById(" wnd [0]/tbar [0]/okcd")。Text ="/img/npaah"

Session.findById(" wnd [0]")。sendVKey 0

Session.findById(" wnd [0]/tbar [1]/btn [6]")。按

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_WORKSPACE")。SetFocus

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_WORKSPACE")。Key =" 1"

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_USERGROUP")。SetFocus

Session.findById(" wnd [1]/usr/cmbDYNP4300-DD_USERGROUP")。Key =" 102"

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES")。verticalScrollbar.Position = 2835

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES")。getAbsoluteRow(2837).Selected = True

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES/txtDYNP4300_TC_QUERIES-NAME [0,2]")。SetFocus

Session.findById(" wnd [1]/usr/tblSAPLAQ_INT_FUNCTIONSTCH_OPEN_QUERIES/txtDYNP4300_TC_QUERIES-NAME [0,2]")。caretPosition = 0

Session.findById(" wnd [1]/tbar [0]/btn [0]")。按

Session.findById(" wnd [0]/shellcont [0]/shell")。pressToolbarButton" GET_DATA"

Session.findById(" wnd [0]/shellcont [0]/shell")。pressToolbarContextButton"&MB_EXPORT"

Session.findById(" wnd [0]/shellcont [0]/shell")。selectContextMenuItem"&XXL"

Session.findById(" wnd [1]/usr/ctxtDY_PATH")。Text =" P:\ Desktop \ Teste"

Session.findById(" wnd [1]/usr/ctxtDY_FILENAME")。Text ="FUNCIONÁRIOS_SITUAÇÃO.XLSX"

Session.findById(" wnd [1]/usr/ctxtDY_FILENAME")。caretPosition = 13

Session.findById(" wnd [1]/tbar [0]/btn [11]")。按

(63.9 kB)
付费偷看设置
发送
4条回答
葫芦娃快救爷爷
1楼 · 2020-09-15 12:18.采纳回答

你好让卡洛,

欢迎使用SAP社区。

要在表中获取正确的条目,您应该在VBScript中编写一个循环,以检测正确的行。

您可以在此处找到很好的示例:

请使用带有GuiTableControl单词的搜索功能。

最诚挚的问候
Stefan

大简至美
2楼-- · 2020-09-15 12:10

非常感谢Stefan! 我会继续阅读。

木偶小白
3楼-- · 2020-09-15 12:07

有人帮忙吗?

小c菟菟
4楼-- · 2020-09-15 12:19

你好让卡洛和瓦迪姆,

我认为

标签正确。 据我所知,这是一个SAP GUI脚本问题,即如何在GuiTableControl中搜索条目。

最好的问候
Stefan

一周热门 更多>