ServiceNow:如何在sc_request层级设置审批并按目录项指定经理审批
在ServiceNow的sc_request层级按目录项配置经理审批的实现方案
1. 给目录项添加审批标记字段
在sc_cat_item(目录项)表中新增一个**布尔类型(复选框)**的自定义字段,推荐命名为u_require_manager_approval,字段标签设为「需要经理审批」。创建或编辑目录项时,直接勾选该选项即可标记是否需要触发经理审批。
2. 创建sc_request表的工作流
- 导航到Workflow > Workflows,新建工作流并选择触发表为
sc_request。 - 设置工作流触发条件:通过多层表关联实现逻辑判断——当当前
sc_request下的任一sc_req_item对应的sc_cat_item中,u_require_manager_approval字段值为true时,触发工作流。
配置条件时,用「条件构建器」关联层级:sc_request -> sc_req_item -> sc_cat_item.u_require_manager_approval = true,并选择「任意匹配」(适配“只要有一个目录项需要审批就触发”的场景,若需全部目录项都要审批才触发,可改为「全部匹配」)。
3. 在工作流中添加经理审批节点
- 在工作流画布中添加审批活动(Approval - User)。
- 配置动态审批人:通过脚本获取请求提交人的直属经理,示例代码如下:
var requester = gs.getUser().getUserByID(current.requested_for); var manager = requester.manager; return manager; - 配置审批分支逻辑:比如审批通过后将
sc_request状态更新为「已审批」,拒绝后更新为「已拒绝」并通知提交人。
4. 设置工作流触发时机
在工作流的「触发条件」中补充状态规则:当sc_request的state字段变为Submitted(已提交)时启动工作流,确保用户提交请求后立即进入审批流程。
5. 测试验证
- 分别创建勾选/未勾选「需要经理审批」的两个目录项。
- 提交对应请求后检查
sc_request层级:勾选的请求应生成经理审批任务,未勾选的请求则跳过审批环节。
内容的提问来源于stack exchange,提问作者Brian Hofmeister
相关产品推荐
相关产品推荐

