基于SharePoint审批人列表的Power Automate审批流配置问题
核心逻辑
根据用户提交的审批类型(如Standard A),从SharePoint审批人矩阵列表筛选对应行,依次提取3位审批人信息,逐个发起审批任务。
步骤说明
筛选审批人数据
添加「获取项目」动作,设置筛选条件匹配提交的审批类型:审批类型列内部名称 eq '@{triggerBody()["门户提交的审批类型字段内部名称"]}'注意:必须使用SharePoint列的内部名称(可通过列表设置→查看列详情,URL中
Field=后的字符串即为内部名称),避免用显示名导致匹配失败。依次发起审批
用「开始并等待审批」动作,按顺序提取对应审批人:- 第一个审批人取值:
@{body('获取项目')?['value']?[0]?['审批人1列内部名称']?['Email']} - 第一个审批通过后,发起第二个审批,取值:
@{body('获取项目')?['value']?[0]?['审批人2列内部名称']?['Email']} - 第二个审批通过后,发起第三个审批,取值:
@{body('获取项目')?['value']?[0]?['审批人3列内部名称']?['Email']}
(如果审批人列是文本类型存储邮箱,直接去掉?['Email']即可)
- 第一个审批人取值:
变量优化(可选)
若要统一存储审批人,可初始化数组类型变量,通过「追加到数组变量」动作依次添加3位审批人的邮箱,后续可通过循环发起审批,但依次审批场景下直接逐个发起更简洁。
常见问题排查
- 取数为空:检查列内部名称是否与SharePoint列表一致,避免显示名和内部名混淆(比如显示名“审批人1”,内部名可能是
Approver1)。 - 审批人无法识别:确保SharePoint列表中审批人列为「人员或组」类型,而非纯文本,否则需手动输入标准邮箱格式。
- 变量语法错误:若用字符串变量存储多个审批人,需用分号分隔邮箱(如
user1@domain.com;user2@domain.com),但依次审批无需合并,单个取值更可靠。
内容的提问来源于stack exchange,提问作者cswift404
相关产品推荐
相关产品推荐

