UiPath Level 2-Part3

这节课说说怎么触发(trigger)robot去执行jobs,主要学习使用Jobs和Schedules的功能。

 

1. robot的动态分配(dynamic allocation)

在创建job的时候,可以选择动态分配robot。确切地说,如果我们想要某个process执行n次,在选择动态分配robot的情况下,process所在的环境(environment)里的所有robot只要空闲就会去执行该process,那些没闲着的robot一旦闲下来了也会马上去执行process,直到达到了要求的次数。

1) 在Orchestrator的Jobs页面创建一个新job。

2) 在Execution Target标签页下面选择Allocate Dynamically。

3) 输入process要执行的次数。

  • 如果指定的次数超过了可用的robot数量,剩下的次数会处于等待分配(Pending Allocation)的状态,等待新的可用的robot,或者刚才的robot执行完一次process。

 


 

2. 计划触发(trigger)一个job

除了手动触发job,即创建一个新job,Part 1详细讲过,我们还可以计划(schedule)一个job。

1) 下面我们计划一个job,它将触发指定环境里的所有robot,每隔1分钟就执行某个process。

  • 在Orchestrator的Schedules页面,点+号创建一个新的Job Schedule。
  • 给Schedule起个名字,选择要安排执行的process,Timezone是选择时区的。
  • 在Trigger标签页下面设定计划的时间。

  • 切换到Execution Target标签页,可以设置安排哪些robot,按照要求我们选择All Robots。

  • Actions标签页下面也有一些功能。
    • Stop Job after可以设置在一段时间后停止计划。
    • Disable Schedule at可以设置在某个日期停止计划。

  • 设置好了点Create,安排上了!

2) 查看触发的jobs。

现在我们回到Jobs页面,可以看到环境里的3个robots已经分别执行process了。一分钟后,三个robots会再次被触发,去执行process。

  • 通过Source列可以看出某个job是通过什么方式触发的。

  • 也可以使用筛选功能专门查看某种方式触发的jobs。
    • Manual:只显示手动触发的job,即在Jobs页面创建的jobs。
    • Schedule:只显示在Schedule页面安排的jobs。
    • Agent:只显示通过UiPath Robot直接触发的jobs。

3) 停止计划或删除计划。

鼠标移动到创建的那条计划上,点右侧的三个点,会弹出操作选项。

  • Disable可以停止计划。如果要重新启动计划,可以选择Enable。
  • Remove会直接删除计划,计划将从Schedule页面移除。
  • View Jobs可以查看与这个计划相关jobs。

 4) 设置仅在工作日执行计划。

  •  右上角点头像,选择Settings。

  • 选择Non-Working Days标签页,在出现的日历里就可以点选非工作日。

  • 在创建新计划的时候,在trigger下面选上Apply non-working days restrictions。

 5) 如果我们计划一个job,在计划触发job时,指定的robot正在执行其他process,那么计划的job会处于等待(pending)状态,排队等着robot空闲了再执行。

  • 如果有很多个pending的job,它们会按照创建的时间顺序依次执行。

 

3. 停止正在执行的job

1) Kill会立即强行停止当前的job,忽略正在执行的步骤,停止后,该job的状态为Stopped。

2) Stop也可以停止job,但是必须配合Sudio里的Should Stop活动使用。

点击Stop后,job不会立即停止,robot会继续执行process,直到运行到Should Stop活动。

Stop和Should Stop活动使我们能安全地停止某个正在执行的process,我们应该确保在每个关键步骤前或后加上Should Stop活动。

使用Stop停止的job,其状态为Successful。

 

下面是一个示例流程:

  • 创建一个循环,robot会不断在记事本写入Hello UiPath Orchestrator。
  • 添加一个Should Stop活动,如果在Orchestrator里点了Stop则退出循环。
    • Should Stop活动返回一个布尔值(True/False),当我们没有在Orchestrator里选择Stop时返回False,当在Orchestrator里选择了Stop时返回True。
  • 根据Should Stop活动的返回结果,robot继续写入文本,或退出循环并写入End of file。

posted @ 2019-12-03 17:19  韭菜也是有尊严的  阅读(1498)  评论(0编辑  收藏  举报