- 入门指南
- 安装和升级
- 机器人类型
- 机器人组件
- 许可
- 将机器人连接到 Orchestrator
- 流程与活动
- 日志记录
- 特定场景
- 监管
- 故障排除

机器人管理员指南
停止流程
A process can either be stopped through Soft Stop or Kill commands.
“软停止”命令
“软停止”命令将流程标记为应停止状态。 可以使用“应停止”活动,从仍在执行的工作流中查询此状态。 工作流应显式处理此状态并完成。 如果不处理“应停止”状态,工作流不会自动停止。 有关利用“软停止”的方案,请参阅 REFramework。
The Stop command is designed for unattended automations and is available only in Orchestrator. In Orchestrator, the Soft Stop command is named Stop.
“终止”命令
“终止”命令首先向工作流发送“取消”请求。 工作流“取消”请求与“应停止”不同。“取消”是由工作流自动处理的工作流信号。 该信号会导致以级联方式取消活动,同时允许工作流的 Finally 块执行清理步骤。 如果“取消”信号未在三秒内停止工作流,则通过在执行中的任何时间强制停止任何正在运行的活动,从而终止作业。
“终止”命令专为 Attended 自动化而设计,适用于 Orchestrator 和桌面客户端以及 API(例如 Assistant、Studio、RobotJS)。在桌面客户端中,“终止”命令的名称为“停止”。
REFramework 流程方案
REFramework 利用“停止”命令。
当一个流程停止时,系统将跳过包含错误逻辑的块,并执行最终块。这将导致 BusinessError 和 SystemError 的值保持为 null,并且系统会将整个流程状态视为成功。描述的行为即为预期行为。
Try-Catch 方案
在“Try-Catch (捕获)”工作流中,当流程停止时,事务状态可能会显示为“成功”,而实际上该事务并未完成。
取消流程
当机器人收到取消命令时,如果执行位于 Try 或 Catch 块中,则跳至 Finally 块,以检查是否有任何错误。如果未发现错误,则 Finally 块便会认为执行已成功完成,原因是不存在失败事件(它们为空)。
终止流程
如果机器人收到“终止 (Kill)”命令时,执行位于 Try or Catch 块中,则它将首先尝试取消流程,跳到 Finally 块。如果 Finally 块内的逻辑在收到“取消”命令后最多 30 秒内仍未执行完毕,则系统会终止整个执行,而且整个流程在日志中成功完成,因为自跳过 Catch 块以来,没有记录任何错误。
避免误报
- 在完成流程逻辑之后,只能在 Try 块内将流程状态设置为
Successful。 - 在完成错误处理逻辑之后,只能在 Try 块内将状态设置为
Failed。 - Finally 块中应该只存在清除逻辑,因为无论执行成功与否,系统都会执行该逻辑。
确保错误逻辑得以执行
如果跳过包含错误逻辑的块,则 BusinessError 和 SystemError 的值保留为 null,并且由于未记录任何错误,因此将整个过程状态视为 successful。