流实例属性
Flow 实例属性用于在不同任务和决策点之间进行数据交换,以实现所需的业务功能。
简介
在协调并发布特定流程后,系统会共享一个执行对象( URL ),具体操作请参阅《 流程设计器管理指南 》中的说明。 每次点击“ URL ”时,都会生成一个新的流程实例。 对于每个此类实例,都会填充一组默认或内置属性。 除了默认属性外,所使用的任务还可以引入一系列自定义属性。
这些属性用于不同任务和决策点之间的数据交换,以帮助构建正确的业务功能。
流实例属性
请参阅以下默认属性列表,这些属性会在每次触发实例时进行初始化。
| 属性名称 | 描述 | 类型 |
|---|---|---|
__tenantid |
用户所属的租户名称。 | 字符串 |
__locale |
用户界面的语言或国家/地区相关设置。 | 字符串 |
status |
任务的状态(成功或失败)。 | 字符串 |
statusDetails |
该任务的状态描述。 | 字符串 |
error |
用于查找流程中遇到的错误相关详细信息的对象。 | JSON |
themeId |
用户希望为该流程配置的自定义主题的 UUID。 在触发 URL 流程时,必须将其声明为查询参数。 | 字符串 |
user |
从CD中获取的用户详细信息。 | SCIM |
- 在任务执行过程中,某些任务的输出参数会被添加到工作流上下文中。
- 在每个任务开始时,属性状态、状态详细信息和错误都会被重置。 对于 Page 而言,可以使用这些值向用户显示相关的错误或状态详情。
- 可以通过添加额外的查询参数来增强执行操作 URL ,以便在默认属性之外插入新属性。
- 在 “页面” 任务中配置的输入字段也会保存在流程实例中。 例如,如果某个页面任务包含一个输入字段,
,则“username”属性
<input type="text" name="username"></input>会被保存在流程实例中,该属性对应输入字段中填写的名称。
| 属性名称 | 描述 | 类型 |
|---|---|---|
applicationId |
请求访问的应用程序的 ID。 | 字符串 |
requestorId |
请求访问的用户 ID。 | 字符串 |
requestId |
使用“发起审批任务”生成的请求 ID。 | 字符串 |
entitlementId |
请求访问的权限的ID。 | 字符串 |
流实例中的错误属性
如果流程在执行过程中遇到任何错误,流程实例中将生成一个错误属性。 该错误属于 JSON 类型。
如果发生无法恢复的错误,流程将被重定向至默认的 error_page,并终止该实例。 如果是可恢复的错误,用户可自行决定后续操作。 该决策可基于错误属性中包含的 messageId,、 messageDescription, 或 taskName, 进行判断。
failed当某项任务出现错误时,该任务的状态为。
在渲染模板时使用属性
与其他任务类似, 在“页面 ”任务期间也可使用流程实例属性。 这些属性可用于替代宏,并生成适用于不同业务场景的有用错误页面或输入表单。 @context.propertyName@这些属性可作为宏使用,格式如下:.
@context.propertyName.nestedPropertyName@如果某个特定属性是嵌套的,则该宏可以按以下方式编写:.
我们来看一个错误属性的例子。 @context.error@在设计流程时,可通过以下方式访问该属性:. @context.error.messageId@同样,可以通过以下方式访问与该错误对应的 messageId :。
用户可以通过宏访问属性内的第 n 级节点,方法是定义属性名称和“.” 作为分隔符。