Axelor ERP:如何为用户任务分配用户或用户组?
Axelor ERP BPM模块:User Task用户/用户组分配配置方法
核心逻辑概述
Axelor的BPM任务分配基于流程定义中的任务节点配置,支持直接指定用户/用户组、通过表达式动态计算、关联业务对象字段三种核心方式,本质是在流程执行到User Task节点时,系统根据配置规则匹配对应的处理人。
具体配置步骤
1. 进入BPM流程定义界面
登录Axelor后台,依次进入 应用程序 > BPM > 流程定义,打开需要编辑的目标流程(或新建流程)。
2. 添加/编辑User Task节点
- 在流程画布中拖入
User Task节点,或双击已存在的User Task节点打开配置面板。 - 基础配置:填写任务名称、描述等信息,确保节点类型为
User Task。
3. 分配用户/用户组的三种方式
方式一:直接指定固定用户/用户组
- 在配置面板的
分配标签页,找到用户或用户组字段:- 点击
用户字段的选择器,从系统用户列表中直接勾选目标用户; - 若选择用户组,点击
用户组字段选择器,勾选对应组,组内所有用户都会收到任务通知(可配置是否需要组内用户抢单或全部可见)。
- 点击
- 适用场景:流程中固定由某个人/团队处理的环节(比如财务审核固定由财务组处理)。
方式二:通过表达式动态分配
- 在
分配标签页的分配表达式字段中,输入Groovy表达式来动态计算处理人:- 示例1:分配给当前登录用户的上级:
user.getParent() - 示例2:从业务对象字段获取用户:
entity.createdBy(假设业务对象有createdBy字段存储创建人) - 示例3:根据业务数据判断分配组:
entity.amount > 1000 ? group('财务组') : group('部门经理组')
- 示例1:分配给当前登录用户的上级:
- 注意:表达式需返回
User或Group类型对象,系统会自动解析并分配任务。
方式三:关联业务对象的用户字段
- 如果流程绑定了业务对象(比如销售订单、采购申请),可以直接将任务分配给业务对象中关联的用户:
- 在
分配标签页的关联用户字段,选择业务对象对应的用户字段(比如销售订单的销售员字段); - 流程执行时,系统会自动读取该业务对象字段的用户,将任务分配给他。
- 在
4. 配置任务通知与权限(可选)
- 在
通知标签页,可设置任务分配时的邮件/系统通知方式; - 在
权限标签页,可限制任务的查看、处理权限,确保只有指定用户/组能操作。
5. 保存并激活流程
配置完成后,点击保存,然后将流程状态设置为激活,即可在流程实例中生效。
关键逻辑说明
- 优先级:如果同时配置了多种分配方式,系统优先级为直接指定 > 分配表达式 > 关联业务对象字段;
- 任务认领:若分配到用户组,默认组内所有用户都能看到任务,第一个点击
认领的用户成为处理人;可在节点配置中设置自动认领,系统会随机分配给组内在线用户; - 动态更新:如果使用表达式或关联业务对象字段,流程执行时会实时读取数据,确保分配的处理人符合当前业务状态。
内容的提问来源于stack exchange,提问作者Chamila
相关产品推荐
相关产品推荐

