
所有权模式
将潜在所有者分配给人员任务时,可以确定所有权的模式。此模式定义用户是否能同时与任务进行交互。根据所有权模式,您还可以定义完成条件以及用户角色和聚集选项的传播。
定义待执行任务或协作任务的潜在所有者时,可以从特定所有权模式中进行选择:
- 单个
- 第一个申领任务的潜在所有者成为任务唯一的所有者。该任务将对其他所有潜在所有者关闭。这是一组工作者可申领单人任务的情境中常见的一个选项。例如,电话呼叫中心收到一个呼叫,所有电话工作人员都有权申领此任务,但一旦其中一个成员申领了此呼叫,那么其他任何人都不能再申领。
- 并行
- 所有潜在所有者都可以申领任务并同时处理该任务。例如,在表决情境中应使用并行所有权。该任务将并行分配给所有表决人,每个表决人都可以进行表决,而无需等待其先行作业。表决结果可以使用聚集选项进行组合。注: 下列人员分配条件不能用于并行所有权任务的潜在所有者:每个人、无人和组。为潜在所有者角色选择这些人员分配将导致部署期间发生验证错误。
所有权模式不适用于调用任务。
选择单个或并行所有权会影响到升级的处理。对于单个所有权,可以定义当任务处于就绪或已申领状态时触发的升级。此类升级不适用于并行所有权任务。如果将任务所有权从单个更改为并行,那么系统将提示您选择如何处理已为“就绪”或“已申领”状态定义的升级。可以使用修改过格式的升级,也可以删除升级。如果选择使用升级,那么它们将根据下列规则进行修改:
任何子任务已启动状态升级都将不进行任何修改即使用,而与您的选择无关。
| 单个所有权 | 并行所有权 | ||
|---|---|---|---|
| 开始状态 | 结束状态 | 开始状态 | 结束状态 |
| 就绪 | 已声明 | 子任务已启动 | 已结束 |
| 就绪 | 已结束 | 子任务已启动 | 已结束 |
| 已声明 | 已结束 | 子任务已启动 | 已结束 |
注: 升级不会保留其原始状态的数据。如果将并行任务转换为单个所有权,那么所有升级都将保持分配给“子任务已启动”状态,而不考虑其历史记录。
使用“完成”和“聚集”选项可指示何时任务可视为完成,对于并行所有权,指示应该如何组合所有者的响应。在的属性视图中,有“完成”、“聚集”和“传播”选项卡。
- 完成
- 完成设置允许定义提早完成条件。在 BPEL 流程可以继续执行之前,可能只需要一小部分潜在所有者来完成任务。例如,需要两名经理来签署采购申请。任意两名潜在所有者响应后,其余用户任务即为冗余,并且该任务可以完成。完成条件可以与截止期限、处理任务的人员数或单个所有者的子任务结果相关。
- 聚集
- 聚集设置允许控制各响应聚集到单一任务结果中的方式。在某些情况下,您可能希望绝大多数响应者的响应占上风,而在另一些情况下,将需要一致通过。必须为并行所有权设置聚集条件。
- 传播
- 人员任务设置为并行所有权时,各个用户任务会创建为原始任务的子任务。子任务将采用任何人员任务的缺省用户角色。如果已为主任务指定非缺省用户角色,那么您可能希望这些角色传播到子任务。在的属性视图中,有 传播选项卡。使用“传播”选项卡上的设置可定义用户角色如何传播到子任务。在要传播的人员分配字段中,选择下列某个选项:
- 无
- 不传播任何用户角色,并且子任务将仅使用缺省用户角色。
- 管理员
- 仅“管理员”角色将从主调任务传播到子任务。传播不会覆盖子任务的缺省用户角色。而是改为组合缺省角色和传播的管理员角色。子任务会将缺省用户角色用于其他角色。这意味着每个子任务都将只有一个潜在所有者,而没有读者。结果,子任务所有者将无法查看其他子任务的结果。
- All
- “全部”用户角色将从主调任务传播到子任务。传播不会覆盖子任务的缺省用户角色。而改为组合每个缺省角色及其相应的传播角色。主任务的所有潜在所有者将成为所有子任务的读者。结果,子任务所有者可以查看其他所有子任务的结果。