python借助Scripting Tracker工具完成SAP自动化

最近有个项目做SAP自动化,脚本代替人工完成重复次数高的动作。

 

在这个项目中借助了Scripting Tracker工具,网络上关于Scripting Tracker工具的介绍不是很多,因此写个文记录下我的使用心得,希望能帮助到你。

 

一、先介绍下Scripting Tracker工具给我的帮助:1、找到操作对象句柄即ID。 2、录制动作转成python脚本。

 

 

链接: https://pan.baidu.com/s/180QkZP-GhS5yIgwAWvM-Ug

 提取码: 6xuj

二、再简单介绍下Scripting Tracker工具怎么使用。

同时打开SAP和Scripting Tracker(本地没有SAP,仅展示tracker页面),点击tracker的刷新按钮,就把Scripting Tracker工具和SAP连接起来了,是不是很厉害,什么都不需要输入,Scripting Tracker就能捕捉到你的SAP当前页了。

python借助Scripting Tracker工具完成SAP自动化_第1张图片

三、介绍Scripting Tracker工具的Analyser和Recorder界面

1、Scripting Tracker工具的Analyser

Analyser是Scripting Tracker工具的默认界面,在上图中那一大块空白处就会像一级一级路径一样显示SAP当前页的操作组件ID,但是只有ID,不能一眼就看出来你要的组件ID到底是哪个ID,没有快速定位的方法,只能一个一个点击,根据下面的Text或Name显示的内容确定是不是你要找的组件ID。

缺点:无法快速定位

2、Scripting Tracker工具的Recorder

python借助Scripting Tracker工具完成SAP自动化_第2张图片

Recorder能录制你在SAP上的动作。录制前记得刷新下,确保Scripting Tracker捕捉的是SAP当前页。

录制前选择你要的脚本形式,我就在这里吃过亏,当时不知道怎么用,默认的脚本形式powershell,录制出来的脚本根本看不懂,后来才知道要选择python形式。

点击红色开始录制按钮,然后就可以开始你的表演了。你在SAP的每个动作都会被Scripting Tracker记录下来并以python脚本的形式显示在下方。不仅帮你找到组件的ID,还帮你解决了用什么函数表示某个动作。

这个功能实在太强大了!

 

#############################################

下面介绍Scripting Tracker帮我解决的难题。

难点1:复选框前打勾。

思路:刚开始我用了sess.findById("####").select()、sess.findById("####").press()等我能想到的函数,都不行。后来用Recorder录制的脚本才明白选择复选框要使用它的属性,脚本是这样的:

sess.findById("####").selected = -1。

复选框不能用press/select等一些动作,需要用属性去控制,比如复选框的selected 等于-1时表示被选中,selected =0表示没被选中。

再说一个我入的复选框的坑:有多条记录要循环查看详情的时候,选择完一条记录后要记得取消打勾,不然循环再多次查询出来的依然是第一条的结果。

 

 

 

 

 

 

你可能感兴趣的:(Python场景积累)