通过power automate制作审批流,如果没有及时审批,每1小时提醒一次,3次提醒后自动通过审批
时间: 2025-08-20 20:22:32 浏览: 3
<think>好的,我现在需要帮助用户创建一个Power Automate审批流,包含定时提醒和三次提醒后自动通过的逻辑。用户提到每小时提醒,三次后自动通过。首先,我需要理清楚整个流程的步骤,确保每个环节都正确。
首先,用户的需求是定时提醒审批人,如果三次提醒后仍未处理,则自动通过。这可能涉及到循环和延迟操作。在Power Automate中,循环通常使用“Do until”或者“Apply to each”,但这里可能需要一个计数器来记录提醒次数。
接下来,审批流程的启动可能需要一个触发器,比如“当项目被创建时”或者手动触发。然后,初始化一个变量来记录提醒次数,比如初始值为0。之后,进入一个循环,条件为提醒次数小于3。在每次循环中,发送提醒邮件,然后延迟一小时,再增加计数器。如果三次后仍未处理,则自动批准。
不过,需要注意的是,审批流在Power Automate中有专门的审批操作,比如“Start and wait for an approval”。可能这里需要结合审批动作和循环提醒。可能的步骤是:发起审批,然后设置一个循环,每小时检查审批状态,如果未响应则发送提醒,三次后自动通过。
另外,自动批准需要在三次提醒后执行,可能需要一个条件判断,当计数器达到3时,执行批准操作。同时,如果审批人在三次提醒前已经处理,则流程应终止,不再继续提醒。
还需要考虑审批响应超时的处理。可能需要在审批步骤中设置超时时间,但用户希望每小时提醒,共三次,所以可能需要自定义循环来实现,而不是依赖审批的内置超时。
可能的流程结构如下:
1. 触发流程(例如,收到新项目时)。
2. 启动审批,并记录审批请求ID。
3. 初始化计数器为0。
4. 进入循环,直到计数器达到3或审批完成:
a. 发送提醒邮件。
b. 等待一小时。
c. 增加计数器。
d. 检查审批状态。
5. 如果循环结束后审批仍未完成,则自动批准。
6. 如果中途审批完成,则结束流程。
但是,如何在Power Automate中轮询审批状态?可能需要使用“Get approval details”操作,并在每次循环中检查状态。如果状态是待定,则继续循环;否则退出循环。
此外,延迟一小时需要使用“Delay”动作,但最长延迟是30天,所以一小时没问题。但循环中的延迟可能会影响流程的总运行时间,需要注意Power Automate的运行时间限制,尤其是如果是基于标准许可证的话,最多运行30天。
需要确保在每次循环中正确获取审批状态,并更新计数器。同时,三次提醒后自动通过可能需要模拟批准操作,或者如果审批未响应,则执行后续的自动批准步骤。
可能需要以下步骤:
- 创建审批请求。
- 循环三次,每次间隔一小时,检查审批状态。
- 如果三次后仍未响应,则使用HTTP请求或其他方法批准请求(可能需要自定义连接器或调用API)。
不过,直接通过Power Automate批准可能需要使用“Respond to approval”操作,但可能需要知道审批的ID和响应。这可能需要更复杂的设置。
可能还需要考虑如何处理自动批准,例如更新项目状态,或者触发后续流程。因此,在三次提醒后,如果未处理,流程将自动发送批准响应。
总结可能的步骤:
1. 触发流程(例如,创建新项目时)。
2. 启动审批并等待响应,但这里可能需要不等待,而是轮询状态。
或者,启动审批并记录ID,然后进入循环。
3. 初始化计数器为0。
4. 进入循环,条件为计数器 <3 且审批未完成。
a. 发送提醒邮件。
b. 延迟1小时。
c. 计数器加1。
d. 获取审批状态。
5. 循环结束后,如果审批仍未完成,则自动批准。
6. 结束流程。
需要验证这些步骤是否可行,特别是如何在Power Automate中处理审批的响应和状态检查。可能需要使用“Get approval details”操作来获取当前状态,并根据状态决定是否继续循环。
此外,发送提醒邮件可能需要判断是否是第一次提醒,或者在每次循环中发送。例如,第一次启动审批后立即发送第一次提醒,然后每小时发送一次,共三次。或者在启动审批后,延迟一小时发送第一次提醒,总共三次,每次间隔一小时。
用户希望的是每小时提醒三次,所以可能需要在启动审批后,先发送第一次提醒,然后每隔一小时发送一次,共三次,之后自动批准。或者,启动审批后,等待一小时,发送提醒,重复三次,然后自动批准。
需要明确提醒的时间点和次数。例如,第一次提醒在审批启动后立即发送,然后每隔一小时发送一次,如果三次后仍未处理,则自动批准。或者,第一次提醒在审批启动后一小时发送,总共三次,每次间隔一小时,总共三小时。
另外,自动批准可能需要模拟审批人的操作,这可能需要使用Power Automate的“Respond to approval”操作,但需要审批的ID和响应(批准/拒绝)。因此,在三次提醒后,可以调用此操作来批准请求。
因此,具体步骤可能如下:
1. 触发流程:例如,当新项目被创建时。
2. 启动审批,并保存审批的ID。
3. 初始化计数器为0。
4. 循环三次:
a. 发送提醒邮件给审批人。
b. 延迟一小时。
c. 计数器加1。
d. 获取审批状态,如果已处理则退出循环。
5. 如果三次后仍未处理,使用“Respond to approval”操作批准请求。
6. 结束流程。
但需要确保在每次循环中检查审批状态,如果已经处理,则停止后续提醒。例如,在每次延迟后,检查审批状态,如果已批准或拒绝,则终止循环。
因此,循环结构可能需要使用“Do until”循环,条件是计数器>=3或审批已完成。在每次循环中,先发送提醒,然后延迟,然后检查状态。
可能的具体步骤:
1. 触发流程。
2. 启动审批,记录ID。
3. 变量:计数器=0。
4. Do until 计数器 >=3 或 审批状态不是待定:
a. 发送提醒邮件。
b. 延迟1小时。
c. 计数器 +=1。
d. 获取审批状态。
5. 如果审批状态仍为待定(即三次提醒后),则自动批准。
6. 结束。
但需要处理在循环中如何获取审批状态,并且可能在第一次循环前需要获取状态。或者,在循环内部,每次延迟后获取状态,并根据状态决定是否继续。
可能需要调整循环结构,例如在循环内部,先检查状态,如果未处理则发送提醒,延迟,然后增加计数器。否则退出循环。
这可能更准确:
1. 触发流程。
2. 启动审批,记录ID。
3. 变量计数器=0。
4. 获取审批状态。
5. 循环直到计数器>=3或审批完成:
a. 如果状态是待定且计数器<3:
i. 发送提醒。
ii. 延迟1小时。
iii. 计数器 +=1。
iv. 再次获取审批状态。
6. 循环结束后,如果状态仍为待定,则自动批准。
7. 结束。
但这样可能需要更复杂的条件判断,确保每次循环都检查状态。
另外,发送提醒邮件可能需要不同的内容,比如第一次、第二次、第三次提醒,但用户可能只需要简单的每小时提醒,内容相同即可。
在Power Automate中实现这些步骤,需要使用以下操作:
- 触发器:例如“When an item is created” (SharePoint等)。
- “Start an approval” 或 “Create an approval”。
- “Initialize variable” 计数器。
- “Do until”循环,条件为计数器>=3或审批完成。
- 在循环内部:
- “Send an email”提醒。
- “Delay”1小时。
- “Increment variable”计数器。
- “Get approval details”获取状态。
- 循环结束后,条件判断,若未完成,则“Respond to approval”批准。
需要注意的是,“Start an approval”通常会等待响应,但这里可能需要使用异步方式,即不等待,而是主动轮询状态。或者,使用“Create an approval”然后轮询其状态。
可能需要使用“Create an approval”而不是“Start and wait for an approval”,因为后者会暂停流程直到审批完成,这不符合需要定时提醒的需求。因此,应使用“Create an approval”来启动审批,然后使用循环来检查状态和发送提醒。
具体操作步骤:
1. 触发器:例如,当SharePoint列表中新项目被创建时。
2. 操作:创建审批(使用“Create an approval”操作),记录返回的审批ID。
3. 初始化变量counter为0。
4. 初始化变量approvalStatus为“Pending”。
5. 循环:Do until counter >=3 或 approvalStatus != 'Pending'
a. 如果 counter <3 且 approvalStatus == 'Pending':
i. 发送邮件提醒审批人。
ii. 延迟1小时。
iii. 增加counter。
iv. 获取审批详情(使用审批ID)。
v. 设置approvalStatus为获取到的状态。
6. 循环结束后,如果approvalStatus仍为Pending:
a. 使用“Respond to approval”操作批准该审批。
7. 结束流程。
这样,每次循环都会发送提醒,延迟一小时,最多三次。如果在循环期间审批被处理,则状态改变,循环终止。如果三次后仍未处理,则自动批准。
需要注意的是,“Create an approval”和“Respond to approval”可能需要特定的权限或连接器配置。此外,审批的响应可能需要管理员权限或特定的身份验证。
另外,发送提醒邮件时,可能需要获取审批的详细信息,例如审批链接,以便审批人可以直接处理。因此,在提醒邮件中包含审批链接是必要的,这可以通过“Create an approval”返回的响应中的链接来实现。
总结,流程的大致步骤正确,但需要在实际的Power Automate中配置这些操作,并确保每个步骤的参数正确,例如审批ID的传递,变量的正确递增,以及状态检查的准确性。
现在,用户可能需要具体的步骤指导,所以需要将上述逻辑转化为具体的Power Automate操作步骤,并注意可能的陷阱,比如循环中的延迟导致的总运行时间超过限制,或者审批ID的正确传递等。
此外,用户可能需要知道如何设置三次提醒后的自动批准,这需要确保在三次循环后,审批状态仍然未处理,然后触发批准操作。这可能涉及到使用“Respond to approval”操作,设置结果为“Approve”。
最后,需要测试流程,确保三次提醒后自动批准,并且在审批人提前处理时流程终止。</think>### Power Automate审批流配置步骤
以下是实现定时提醒+三次后自动通过的审批流配置方案:
1. **创建触发器**
```typescript
// 示例:使用SharePoint列表新建项作为触发
When an item is created (SharePoint)
```
选择需要关联的站点和列表,作为流程启动的触发条件[^1]。
2. **初始化变量**
```typescript
Initialize variable:
- Name: retryCount
- Type: Integer
- Value: 0
Initialize variable:
- Name: approvalStatus
- Type: String
- Value: Pending
```
3. **创建审批请求**
```typescript
Create an approval (审批创建操作)
- 标题:填写动态内容[标题]
- 审批人:选择审批人邮箱
- 详情:使用动态内容生成审批说明
```
记录返回的审批ID,后续操作需要引用此值[^1]。
4. **配置循环提醒**
```typescript
Do until (循环条件:retryCount >=3 或 approvalStatus != 'Pending')
├── Condition: 如果 approvalStatus == 'Pending' 且 retryCount <3
│ ├── 发送邮件提醒
│ │ - 主题:待审批提醒(第@{variables('retryCount')+1}次)
│ │ - 正文:包含审批链接和截止时间
│ ├── 延迟1小时
│ ├── Increment variable: retryCount +=1
│ └── Get approval details: 获取最新审批状态
└── 否则退出循环
```
5. **配置自动批准**
```typescript
Condition: 如果 approvalStatus == 'Pending'
└── Respond to approval
- Approval ID: 动态内容中的审批ID
- 决策: Approve
- 注释:系统自动通过(三次未响应)
```
### 关键配置说明
1. **延迟动作**需分段处理:
- 标准版用户单次最大延迟为30天,每小时延迟可直接使用"Delay"动作
- 企业版用户建议使用"Schedule next hour"实现更精准控制
2. **状态检查**需要与审批系统保持心跳:
```typescript
Get approval details (获取审批详情)
- 返回字段包含:status、responder、responseDate
- 建议设置超时重试机制防止网络抖动
```
3. **邮件模板**建议:
```html
<div>
<p>@{triggerBody()?['Author']}提交的申请待审批:</p>
<a href="https://flow.microsoft.com/approvals/@{outputs('Create_approval')?['body/displayName']}">审批入口</a>
<p>剩余自动通过次数:@{sub(3, variables('retryCount'))}</p>
</div>
```
### 典型应用场景
- 紧急采购单审批
- 假期申请快速通道
- SLA严格的服务响应工单
- 需要防止审批阻塞的连续性业务流程[^1]
阅读全文
相关推荐




















