流程执行
- processId
- processVar
- processTitle
- processBusinessKey
- processParentId
- processParentTaskId
- processCreateUser
- processCreateTime
- processStartTime
- processEndTime
- processStatus
- processComment
- isProcessEnd
- isSubProcess
- processCostTime
- processExpireTime
- processExt1
- processExt2
- processExt3
- processExt4
- processExt5
- processExt6
- processExt7
- processExt8
- taskId
- taskPreTaskId
- taskPreHumanTaskId
- taskTitle
- taskOwner
- taskTarget
- taskPriority
- taskStatus
- taskHumanType
- taskDueTime
- taskBeginTime
- taskReadTime
- taskEndTime
- taskCostTime
- taskExpireTime
- taskExt1
- taskExt2
- taskExt3
- taskExt4
- taskExt5
- taskExt6
- taskExt7
- taskExt8
- isTaskEnd
- TaskSameHuman
processId
语法
@processId(businessKey)
- 流程实例Id
- businessKey用来表示一个外部业务系统对象的全局不重复标识,通常由外部业务维护或一组关键业务标识组合。如订单系统的订单编号。该参数作为一个可选项,在由API创建流程时被初始化,默认不启用的
参数
- businessKey (可选)从对应该业务主键的流程实例获取Id
例子
当前流程实例Id是@processId,CRM系统A订单的流程实例Id是
@processId(ORDER-2014070888)
结果
当前流程实例Id是a6314e95-5973-4876-90c8-89586ba539c5,CRM系统A订单的流程实例Id是
8911e732-b42a-4556-853f-ad32761bcbee
processVar
语法
@processVar(*varName,contextType,contextId)
- 流程实例变量
- businessKey用来表示一个外部业务系统对象的全局不重复标识,通常由外部业务维护或一组关键业务标识组合。如订单系统的订单编号。该参数作为一个可选项,在由API创建流程时被初始化,默认不启用的
参数
varName (必选)流程变量名,注意区分大小写
contextType (可选)常量:id、businessKey
- 如果值为id时,从一个流程实例Id查询流程实例 - 如果值为businessKey时,从一个业务主键查询流程实例
contextId (可选)当contextType给定时,必填)对应contextType的值
- 如果contextType为id,该值必须给定一个的流程实例Id - 如果contextType为businessKey,该值必须给定一个业务主键
例子
当前流程变量p1的值是@processVar(p1)
流程实例Id为999的流程变量p1的值是@processVar(p1,id,999)
业务主键为ORDER-888的流程变量p1的值是@processVar(p1,businessKey,ORDER-888)
当前流程父流程实例的变量p1值是@processVar(p1,id,@processParentId)
processTitle
语法
@processTitle(contextType,contextId)
- 流程实例标题
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程的标题是@processTitle
流程实例Id为999的标题是@processTitle(id,999)
业务主键为ORDER-888的标题是@processTitle(businessKey,ORDER-888)
当前流程父流程标题是@processTitle(id,@processParentId)
processBusinessKey
语法
@processBusinessKey(contextType,contextId)
- 绑定流程实例的外部业务系统主键值
- 如果未设置BusinessKey,在创建流程实例时会默认初始化一个36位长度的字符串
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程的业务主键是@processBusinessKey
流程实例Id为999的业务主键是@processBusinessKey(id,999)
业务主键为ORDER-888的业务主键是@processBusinessKey(businessKey,ORDER-888)
当前流程父流程业务主键是@processBusinessKey(id,@processParentId)
processParentId
语法
@processParentId(contextType,contextId)
- 父流程实例Id
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程父流程Id是@processParentId
流程实例Id为999的父流程Id是@processParentId(id,999)
业务主键为ORDER-888的父流程Id是@processParentId(businessKey,ORDER-888)
当前流程父流程Id是@processParentId(id,@processId)
当前流程父流程的父流程Id是@processParentId(id,@processParentId(id,@processId))
processParentTaskId
语法
@processParentTaskId(contextType,contextId)
- 父流程任务实例Id
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程由父流程在任务Id为@processParentTaskId的任务中启动
processCreateUser
语法
@processCreateUser(contextType,contextId)
- 流程实例创建人
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程由@processCreateUser创建
processCreateTime
语法
@processCreateTime(contextType,contextId)
- 流程实例创建时间
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程在@processCreateTime时被创建
processStartTime
语法
@processStartTime(contextType,contextId)
- 流程实例启动时间
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程在@processStartTime时被启动
processEndTime
语法
@processEndTime(contextType,contextId)
- 流程实例结束时间
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程在@processEndTime时被结束,状态是@processStatus
processStatus
语法
@processStatus(contextType,contextId)
- 流程实例状态
- 常见状态参考
- Active:活动(运行中)
- Suspend:挂起(暂停)
- End:结束(正常)
- Terminate:终止+结束
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程的状态是@processStatus
processComment
语法
@processComment(*activityId,*policy,contextType,contextId)
- 用户审批留言
- 获得指定节点的审批留言。activityId为指定的节点Id;policy是要提取的属性,支持:time、menuName、comment、file常量,多个属性用竖线隔开
- policy常见状态参考,多个属性用竖线隔开
- time:审批留言的时间
- menuName:审批留言的菜单名称
- comment:留言内容
- file:审批留言的附件
- 审批留言中存放的是节点名称,根据activityId参数查到该节点和审批记录中的节点名称比对,找到第一个名称匹配的则不在继续寻找
参数
activityId (必选)为指定的节点Id
policy (必选)policy是要提取的属性,支持:time、menuName、comment、file常量,多个属性用竖线隔开
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前用户的审批留言是@processComment
isProcessEnd
语法
@isProcessEnd(contextType,contextId)
- 流程实例是否已结束,结束返回TRUE
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程结束了吗?@isProcessEnd
isSubProcess
语法
@isSubProcess(contextType,contextId)
- 流程实例是否是子流程,是返回TRUE
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程是子流程实例吗?@isSubProcess
processCostTime
语法
@processCostTime(contextType,contextId)
- 流程实例执行总耗时(毫秒),该值在流程结束时自动统计
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程总共耗费了@processCostTime毫秒,折合@calc(@processCostTime/1000/60)分钟
processExpireTime
语法
@processExpireTime(contextType,contextId)
- 流程实例执行超时时间(毫秒),该值在流程结束时自动统计
- 默认建模的流程并未设置流程合理完成时限和警告时限,在这种情况下,超时时间不被统计
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
当前流程总共超时了@processExpireTime毫秒,折合@calc(@processExpireTime/1000/60)分钟
processExt1
语法
@processExt1(contextType,contextId)
- 流程实例扩展字段1的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt2
语法
@processExt2(contextType,contextId)
- 流程实例扩展字段2的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt3
语法
@processExt3(contextType,contextId)
- 流程实例扩展字段3的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt4
语法
@processExt4(contextType,contextId)
- 流程实例扩展字段4的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt5
语法
@processExt5(contextType,contextId)
- 流程实例扩展字段5的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt6
语法
@processExt6(contextType,contextId)
- 流程实例扩展字段6的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt7
语法
@processExt7(contextType,contextId)
- 流程实例扩展字段7的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
processExt8
语法
@processExt8(contextType,contextId)
- 流程实例扩展字段8的值
- 该值可由SDK API设置或在流程扩展属性配置
参数
contextType (可选)参见@processVar参数说明
contextId (可选)参见@processVar参数说明
例子
无
taskId
语法
@taskId
- 任务实例Id
参数
无
例子
当前任务实例Id是@taskId
taskPreTaskId
语法
@taskPreTaskId(taskInstId)
- 前一个任务实例Id
- 如果已经是第1个任务,返回-1
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务是由@taskPreTaskId创建的
taskPreHumanTaskId
语法
@taskPreHumanTaskId(taskInstId)
- 前一个人工任务实例Id
- 该操作向前寻找父任务(按实际运行的轨迹),直至寻找到最近的一个人工任务。如果没有返回-1
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务最近一个人工任务是@taskPreHumanTaskId
taskTitle
语法
@taskTitle(taskInstId)
- 当前任务标题
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务标题是@taskTitle
前一个任务标题是@taskTitle(@taskPreTaskId)
前一个人工任务标题是@taskTitle(@taskPreHumanTaskId)
taskOwner
语法
@taskOwner(taskInstId)
- 任务创建人账户
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务发起人是@taskOwner
前一个人工任务发起人是@taskOwner(@taskPreHumanTaskId)
taskTarget
语法
@taskTarget(taskInstId)
- 任务执行人账户
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务办理人是@taskTarget
前一个人工任务办理人是@taskTarget(@taskPreHumanTaskId)
taskPriority
语法
@taskPriority(taskInstId)
- 任务优先级
- 值参考:
- 0:低 - 1:无 - 2:中 - 3:高
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务优先级是@taskPriority
taskStatus
语法
@taskStatus(taskInstId)
- 任务状态
- 值参考:
- active:活动(运行中) - suspend:挂起(暂停) - error:系统异常(非人工任务) - complete:完成 - compensate:补偿 - delete:删除 - cancel:取消 - terminate:终止结束
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务状态是@taskStatus
taskHumanType
语法
@taskHumanType(taskInstId)
- 人工任务的类型
- 值参考:
- 1:常规待办任务 - 2:只读传阅任务【不影响流程推进】 - 3:待办任务,从哪来回哪去 - 4:只读等待任务,如等待作者修改 - 9:系统通知任务【不影响流程推进】 - 11:加签任务
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务类型是@taskHumanType
taskDueTime
语法
@taskDueTime(taskInstId)
- 任务实例的执行期限
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务的逾期时间是@taskDueTime
taskBeginTime
语法
@taskBeginTime(taskInstId)
- 任务实例的开始执行时间
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务开始执行时间是@taskBeginTime
taskReadTime
语法
@taskReadTime(taskInstId)
- 任务实例的第一次阅读时间
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务由执行人第一次阅读的时间是@taskReadTime
taskEndTime
语法
@taskEndTime(taskInstId)
- 任务实例结束时间
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务执行完毕的时间是@taskEndTime
taskCostTime
语法
@taskCostTime(taskInstId)
- 任务实例执行耗时(毫秒),该值在任务结束时自动统计
- 如果是人工任务,应用该账户的工作时间设置,忽略非工作时间
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务执行总耗时是@taskCostTime毫秒,折合@calc(@taskCostTime/1000/60)分钟
taskExpireTime
语法
@taskExpireTime(taskInstId)
- 任务实例执行超时(毫秒),该值在任务结束时自动统计
- 应用该账户的工作时间设置,忽略非工作时间
- 默认建模的人工节点并未设置流程合理完成时限和警告时限,在这种情况下,超时时间不被统计
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
当前任务执行总超时了@taskCostTime毫秒,折合@calc(@taskCostTime/1000/60)分钟
taskExt1
语法
@taskExt1(taskInstId)
- 任务实例扩展字段1
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt2
语法
@taskExt2(taskInstId)
- 任务实例扩展字段2
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt3
语法
@taskExt3(taskInstId)
- 任务实例扩展字段3
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt4
语法
@taskExt4(taskInstId)
- 任务实例扩展字段4
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt5
语法
@taskExt5(taskInstId)
- 任务实例扩展字段5
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt6
语法
@taskExt6(taskInstId)
- 任务实例扩展字段6
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt7
语法
@taskExt7(taskInstId)
- 任务实例扩展字段7
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
taskExt8
语法
@taskExt8(taskInstId)
- 任务实例扩展字段8
- 该值可由SDK API设置
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
isTaskEnd
语法
@isTaskEnd(taskInstId)
- 任务实例是否结束,如果已结束返回TRUE
参数
- taskInstId (可选) 从指定的任务实例中获取
例子
无
TaskSameHuman
语法
@TaskSameHuman(*nextUserTaskDefId,isPerformer,taskInstId)
- 判断指定节点的办理人,如果相同返回TRUE
参数
- nextUserTaskDefId (必须) 节点定义ID
- isPerformer (可选) 是否只匹配执行人忽略可选人,默认false
- taskInstId (可选) 从指定的任务实例中获取,默认当前实例
例子
无


