订阅

UiPath Studio

UiPath Studio 指南

编排流程

长时间运行的工作流是主项目,可在无人值守的环境中支持服务编排、人工干预和长时间运行的事务。

当某些流程在继续执行活动的下一步骤前需要人工输入来处理异常、审批或验证时,则需要人工干预。在这种情况下,系统将会暂停执行流程,并释放机器人,直到人工任务完成。

工作流拆分

A long-running workflow contains UiPath.Persistence.Activities and may be combined with Invoke Process and non-user interaction activities, orchestrating human tasks with Robot tasks. It runs in Session 0, thus ensuring speedy execution. Please note that the debugging of an Orchestration Process is done in a user session.

16691669

长时间运行的工作流可能会编排:

  • Background processes that may contain activities performing API calls, and running in Session 0. They can be invoked using Invoke Process activity.
  • UI: a process with user interaction activities called through the Start Job from Orchestrator activity, and running in a user session.
  • Human in the Loop: the user interacts through tasks that require forms to be completed in Orchestrator. It implies the usage of Create Form Task activity paired with Wait for Form Task and Resume.

编排流程模板

In Studio, go to Home > Orchestration Process to open the template, which contains the default UiPath.Persistence.Activities and UiPath.System.Activities dependencies in a Flowchart workflow type.

563563

The template's project.json file has the supportsPersistence: true parameter, indicating that process execution resumes upon task completion.

The requiresUserInteraction: false parameter indicates this workflow does not contain user interaction activities, similar to a Background Process.

不建议手动修改 project.json 文件中的参数。

573573

A process may be turned into an Orchestration Process from the Project Settings window by setting the Supports Persistence toggle to Yes.

编排流程的代码片段

首先,您可以使用“代码片段”面板中提供的一系列工作流代码片段创建“编排流程”

508508

构建编排流程

请按照以下步骤将 UiPath.Persistence.Activities 包中的活动配对,并建立自己的编排流程

  1. 使用“添加队列项目并获取引用活动添加具有 inin/outout 参数的队列项目,然后获取对应的队列项目对象。队列项目处理完毕后,如果该活动与“等待队列项目,然后继续”活动配对,则系统会将 ItemInformation 属性中提供的参数分配回所映射的工作流变量。
898898
  1. 等待队列项目,然后继续活动应与“添加队列项目并获取引用”活动相配对。工作流进入暂停状态,并释放此活动中的机器人,待特定队列项目完成后,继续执行流程的下一个步骤。
914914
  1. 启动作业并获取引用活动通过提供 inin/outout 类型的参数调用其他流程。执行完毕后,如果该活动与“等待作业,然后继续”活动配对,那么系统会将修改后的参数映射回工作流变量。
914914
  1. 等待作业,然后继续活动应提供作为“启动作业并获取引用”活动的输出而给出的 Job Object,从而与后者配对。这会暂停当前流程,等待引用作业完成,并在引用作业的状态更新为完成后继续该流程。
915915
  1. 使用“创建表单任务”活动,通过基于表单的可视化来创建任务,以实现工作流中的人机交互。这些具有相关工作流上下文的表单将提供给用户,用于决策及其他用途。要在此活动中启用表单设计器,必须安装 UiPath.FormActivityLibrary 包。

📘

备注:

当使用从 2021.4 开始的 Studio 版本以及 1.2.1 之前的 UiPath.Persistence.ActivitiesUiPath.FormActivityLibrary 版本时,“表单设计器”窗口将不占据焦点,并且在打开设计器窗口时可以与 Studio 进行交互。为避免此问题,请确保将程序包更新为最新版本。

878878
  1. 等待表单任务,然后继续活动应提供 Task Object 作为输入,以与“创建表单任务”活动配对,如此方可暂停工作流,直到此任务已由最终用户完成。
881881
  1. 使用“延迟后恢复活动暂停工作流的执行,并在特定日期和时间恢复该工作流。
  2. 在 Studio 中执行工作流。每当机器人执行长时间运行的活动时,Studio 都会进入只读状态,同时启用功能区中的“继续”选项。接着,完成底层任务、队列项目或作业,然后单击“继续”

最佳实践

  • UiPath.Persistence.Activities 包内长时间运行的活动(“等待并继续”活动)只能用在编排流程的入口点,即标记为 Main.xaml 的文件。
  • 由一个编排流程构建的可重用组件只能在其他编排流程中引用。
  • 如果将长时间运行的工作流附加到队列处理,并且该工作流处于暂停状态,则队列项目即使在 24 小时后仍会保持进行中状态,直到工作流在恢复后设置事务状态。如果队列项目标识符包含在“等待”和“继续”活动的相同作用域中,则这些标识符将成为持久化工作流上下文的一部分。
  • 暂留点(等待和恢复活动)不能在“遍历循环”活动的主体内使用,因其在执行第一次迭代后会暂停工作流,这可能与您的预期行为不相符。
    也可以尝试同时使用循环与暂留活动,例如“并行的遍历循环“活动。请注意,默认情况下,每项作业恢复触发器的最大数量限制为 1,000。
  • 不支持“延迟”“重试作用域”活动,并且在编排流程的主工作流中使用时,这两个活动无法正常工作。在这种情况下,应将其放置在“非暂留作用域”活动中。
  • 任何可用的机器人均可恢复长时间运行的工作流,只要该机器人与暂停作业(例如无人值守或非生产)的机器人处于相同环境且类型相同,因此必须还要在暂留点后提供执行所需的本地资源。
  • All variables used in the scope of a long-running activity must be serializable. Types of variables listed in this page are serializable: Text, True or False, Number, Array, Date and Time. Data Table and GenericValue variables.
  • Variables used in scopes that do not contain long-running activities are not subjected to the serialization requirement, as the workflow does not get suspended in their scope. Non-serializable data types can be used in separate sequence scopes in the same workflow or by invoking other files, as long as they are between Wait and Resume activities, like Wait for Job and Resume, Wait for Queue Item and Resume and Wait for Form Task and Resume.
  • Please take into consideration that some properties of objects generated by long-running activities cannot be evaluated in the Locals panel.
  • 对期望每项作业具有大量操作的工作流实施适当的批处理。请注意,每项作业每次可等待的默认作业量限制为 1,000 项操作(或其他作业触发器)。

11 个月前更新


编排流程


建议的编辑仅限用于 API 参考页面

您只能建议对 Markdown 正文内容进行编辑,而不能建议对 API 规范进行编辑。