Salesforce新手求助:Training__c对象End_Date到期时如何自动创建任务?
非触发器实现Training到期自动创建任务的方案
作为Salesforce新手,不用写触发器的话,最推荐用**Flow Builder(流程构建器)**来实现,操作全可视化无代码门槛,下面是具体步骤:
方案1:计划触发式Flow(最常用)
- 进入Setup,搜索「Flow Builder」打开,点击「New Flow」,选择「Scheduled-Triggered Flow」后点击Create
- 配置计划规则:
- 给流程命名,比如「Training到期自动创建任务」
- 关联对象选择
Training__c - 执行频率设为「每天一次」(按需调整,比如需要提前提醒可设为提前N天)
- 选业务低峰时段执行,比如凌晨1点
- 添加「Get Records」元素:
- 选择
Training__c对象 - 筛选条件设置为:
End_Date等于今天,同时Task_Created__c(需自行创建一个复选框字段,用于标记是否已生成任务)等于False(避免重复创建)
- 选择
- 添加「Loop」元素,遍历刚才获取到的所有符合条件的Training记录
- 在Loop内添加「Create Records」元素:
- 要创建的对象选择
Task - 填充任务字段:
- Subject:比如「跟进Training到期事项」
- WhatId:绑定Loop中的Training记录ID
- OwnerId:可设为Training记录的负责人,或指定固定用户
- Status:默认设为「Not Started」
- 其他字段根据业务需求补充即可
- 要创建的对象选择
- (可选)在Loop外添加「Update Records」元素,将已生成任务的Training记录的
Task_Created__c改为True,防止后续重复触发 - 保存并激活流程
方案2:Process Builder(旧版工具,也可实现)
如果习惯使用Process Builder,可按以下步骤操作:
- 进入Setup搜索「Process Builder」,点击「New」,命名后关联
Training__c对象 - 触发方式选择「当记录创建或编辑时」,添加一个Scheduled Action,触发时间设为
End_Date当天 - 添加判断条件:
End_Date等于当前日期,且Task_Created__c为False - 添加即时动作:选择「Create a Record」,对象为
Task,填充必要字段 - (可选)添加更新动作,将
Task_Created__c设为True - 激活过程
重要提醒
- 必须添加防重复机制!否则每天执行流程会给同一条Training生成重复任务,自定义复选框是最简单的实现方式
- 测试时可将
End_Date设为今天,通过Flow Builder的「Run」按钮手动触发测试,验证任务是否生成
内容的提问来源于stack exchange,提问作者Artem
相关产品推荐
相关产品推荐

