点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好!
我想自动将数据从excel(64x)上传到SAP表。
我开始了必要的交易,但不能填写必填表字段。
我的脚本如下:
子SAP_MIGO()
设置SapGuiAuto = GetObject(" SAPGUI")
设置sapApp = SapGuiAuto.GetScriptingEngine
设置SapConnection = sapApp.Children(0)
设置sapsession = SapConnection.Children(0)
如果是IsObject(WScript)然后
WScript.ConnectObject sapsession,"开"
WScript.ConnectObject sapApp,"打开"
如果结束
sapsession.StartTransaction" migo"
'-我想在此处填写所需交易的表格。 有关文件中附加的表文件名的信息
结束子
我不能使用findByID方法,因为ID在不同用户的计算机上不同
非常感谢您的帮助!
table-view.jpg (83.3 kB)
Vitaly vorontsov
Hello Vitaly
这里有一个小方法 检测没有程序名称和屏幕编号的表。
现在您可以通过以下两行找到表:
它与路径以及任何程序名称或屏幕编号均无关。 而且不必定义UI元素的完整名称,只需一个部分就可以。
最诚挚的问候
Stefan
为什么您认为ID是 会"在不同用户的计算机上有所不同"吗? 字段ID取决于SAP程序/屏幕,而不取决于用户计算机。
Sandra Rossi,
字段的ID如下:
wnd [0]/usr/ssubSUB_MAIN_CARRIER:SAPLMIGO:0008/subSUB_ITEMLIST:SAPLMIGO:0200/tblSAPLMIGOTV_GOITEM/ctxtGOITEM-MAKTX [3,21]
ID包含列号。 每个用户都可以在SAP表中设置列顺序。 因此,在这种情况下,ID不起作用。
position1.jpg
position2.jpg
Vitaly vorontsov
Hello Vitaly,
感谢您的回复。
要加快脚本运行速度,您可以设置更多UserArea 具体。 wnd [0]/usr是完整的区域。使用更特定的区域可以节省大量时间。
是的,据我所知,您的代码看起来不错。 p>
最诚挚的问候
Stefan
感谢您的更新。 没错,SAP后端可能会基于当前登录的SAP用户(以及自定义等等)显示不同的数据。
注意:请使用COMMENT按钮发表评论,问题和添加详细信息 等等,ANSWER只是提出一个解决方案,在答案区域的右边删除SAP文本。
一周热门 更多>