点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
我一直在努力从SAP的gridview中读取数据,特别是当数据来自我们为其设置了多个参数的表时。 一切都通过vbscript完成。 我的问题是:
- 遍历gridview数据集的最有效方法是什么? 我遇到的所有教程都显示了一个单元一个单元地循环。 有没有一种方法可以一次复制整个数据集到数组?
- 如何填充多个选择字段,例如图片中的一个? 在图片下面的代码中,我将向您展示我一次执行一个值。 例如,如何使用存储在数组或文件中的数据填充数据?
如果不是IsObject(application),则 设置SapGuiAuto = GetObject(" SAPGUI") 设置应用程序= SapGuiAuto.GetScriptingEngine 万一 如果不是IsObject(connection)然后 设置连接= application.Children(0) 万一 如果不是IsObject(session)然后 设置会话= connection.Children(0) 万一 如果IsObject(WScript)然后 WScript.ConnectObject会话,"打开" WScript.ConnectObject应用程序,"打开" 万一 session.findById(" wnd [0]/tbar [0]/okcd")。text =" se16n" session.findById(" wnd [0]")。sendVKey 0 session.findById(" wnd [0]/usr/ctxtGD-TAB")。text ="/img/opt/vim_1head" session.findById(" wnd [0]/usr/txtGD-MAX_LINES")。text ="" session.findById(" wnd [0]/tbar [1]/btn [18]")。按 session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/btnPUSH [4,1]")。setFocus session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/btnPUSH [4,1]")。按 '-这是我开始填充多重选择字段的地方。 我想从数组中复制数据吗? 怎么做? session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,0]")。text =" 1477880" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,1]")。text =" 1477699" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,2]")。text =" 1477879" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,3]")。text =" 1477785" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,4]")。text =" 1477779" '-每隔5行,我需要按F7键以允许进一步添加 session.findById(" wnd [1]")。sendVKey 7 session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,5]")。text =" 1477711" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,6]")。text =" 1477797" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,7]")。text =" 1477881" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,4]")。text =" 1477882" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,5]")。text =" 1477883" session.findById(" wnd [1]")。sendVKey 7 session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,3]")。text =" 1477784" session.findById(" wnd [1]/usr/tblSAPLSE16NMULTI_TC/ctxtGS_MULTI_SELECT-LOW [1,4]")。text =" 1477785" session.findById(" wnd [1]")。sendVKey 0 session.findById(" wnd [1]")。sendVKey 8 session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,1]")。selected = true session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,1]")。setFocus session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,10]")。selected = true session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,10]")。setFocus session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,13]")。selected = true session.findById(" wnd [0]/usr/tblSAPLSE16NSELFIELDS_TC/chkGS_SELFIELDS-MARK [5,13]")。setFocus session.findById(" wnd [0]")。sendVKey 8 设置GridView = session.findById(" wnd [0]/usr/cntlRESULT_LIST/shellcont/shell") GridView.selectAll '-我将以json格式写下结果 myFile =" C:\ Users \ Jakub.Konstantynowic \ Documents \ vim_1head.json" 设置fso = CreateObject(" Scripting.FileSystemObject") 设置文件= fso.CreateTextFile(myFile,True,True) file.WriteLine" [" '-为了阅读gridview,我使用了两个循环:一个用于行,一个用于列。 有更好的方法吗? 对于i = 0到GridView.RowCount-1 eachCellValue =" {"&vbCrLf 对于j = 0到GridView.ColumnCount-1 如果j任何帮助将不胜感激。 在此先感谢大家,并致以最诚挚的问候。 保持健康。
sap.jpg (79.0 kB)
您好 Jakub Konstantynowicz ,
对您的问题:
最诚挚的问候
Stefan
一周热门 更多>