UiPath学习笔记-Pick活动:同时判断多个条件,执行对应操作

今天遇到了一个小案例:有多个作业对象,数量不确定,每个作业对象执行前会弹出确认对话框,需要使用UiPath实现自动化点击OK按钮进行作业,每个作业几秒~二十秒不等,作业完成后会弹出下个作业的确认对话框,需要再次自动化点击OK按钮,以此类推,所有作业完成后会弹出执行成功的对话框。

一开始我的实现方法:使用Element Exists对每次弹出的对话框进行存在判断(设置Timeout属性为默认30s),对象确认对话框存在时自动点击OK按钮,循环进行下一轮存在判断,直到如果30秒还没找到,就去寻找执行成功的对话框,找到了就证明作业执行成功,如果没找到就证明程序异常。

这样的处理方式,就意味着最后一个作业对象执行完成后,即使执行成功对话框已经弹出,还要等待30s才能结束程序,比较浪费时间,而且感觉很low。

后来,我发现了Pick 和 Pick Branch这一对好兄弟,小问题迎刃而解。示例如图:

Pick活动示例

同样是while循环不变,使用Pick活动,拖入2个Pick Branch活动,在Pick Branch活动的Trigger中判断对话框是否存在。程序执行到Pick活动时,会同时执行各个Trigger,当某个Trigger满足条件时,就会执行当前Pick Branch对应的操作,其他Pick Branch对应的操作则不会被执行。

这样程序执行时,就会同时判断画面上出现的是对象确认对话框还是执行成功对话框,如果是对象确认对话框,则点击OK按钮,进行下一轮判断。如果是程序执行完成对话框,则程序执行完成,结束循环,不需要额外的等待时间。

是不是很实用呀,有更好的方法欢迎一起交流讨论~

小窍门:如果Pick活动中的每个Pick Branch的Trigger都不满足怎么办?-->可以再追加一个Pick Branch,在Trigger中拖入Delay活动,设定相应时间,该时间间隔后如果其他Trigger还是不满足,则会执行该Pick Branch中对应的操作。

你可能感兴趣的:(UiPath学习笔记-Pick活动:同时判断多个条件,执行对应操作)