Loading
销售效率
在步骤完成时自动设置潜在客户的状态

在步骤完成时自动设置潜在客户的状态

使用 Apex 触发器从节奏订阅变更数据捕获事件。当销售代表完成潜在客户节奏中的第一个接触步骤时,将潜在客户的状态更新为“已联系”。

所需的 Edition

适用于:Lightning Experience
适用于销售参与,它包括在销售业绩Einstein 1Unlimited Edition 中,另行付费后适用于ProfessionalEnterprise Edition。Sales Engagement 另行付费后适用于 Service 和 Lightning Platform。

首先为 ActionCadenceStepTrackerChangeEvent 对象启用变更数据捕获。然后,创建变更事件触发器。最后,更改步骤的状态,并查看潜在客户的状态如何自动更新。要使用本示例,您需要节奏和名为“首次接触”的步骤。节奏必须至少有一个潜在客户作为目标添加。

备注
备注 请记住,变更事件的 Apex 触发器是异步的。在销售代表将步骤标记为完成后,在更新相关潜在客户的状态之前,可能会出现短暂的延迟。

为 ActionCadenceStepTrackerChangeEvent 对象启用变更数据捕获

在接收节奏步骤的变更通知之前,您必须为通知启用 ActionCadenceStepTrackerChangeEvent 对象。

  1. 从快速查找框的设置中,输入更改数据捕获,然后选择更改数据捕获
  2. 在可用实体中,选择节奏步骤跟踪器 (ActionCadenceStepTracker),然后单击 > 箭头。
  3. 保存更改。

为 ActionCadenceStepTrackerChangeEvent 对象启用变更数据捕获

使用开发人员控制台,在 ActionCadenceStepTracker 更改事件上创建触发器。

  1. 单击齿轮图标,然后选择开发人员控制台
  2. 在开发人员控制台中,选择文件 | 新建 | Apex 触发器
  3. 在名称字段中,输入触发器的名称。我们使用 UpdateLeadOnStepCompletionTrigger
  4. 从下拉列表中,选择 ActionCadenceStepTracker
  5. 使用此代码替换默认内容。
    trigger UpdateLeadOnStepCompletionTrigger on ActionCadenceStepTrackerChangeEvent (after insert)
        for(ActionCadenceStepTrackerChangeEvent event : Trigger.New) {
            EventBus.ChangeEventHeader header = event.ChangeEventHeader;
            List<String> recordIds = header.getRecordIds();
            
            System.debug('Received change event for ' + 
                         header.entityName +
                         ' for the ' + 
                         header.changeType + 
                         ' operation.'
                        );
            
            if(recordIds.size() == 0) {
                continue;
            }
            
            // Get ActionCadenceStepTracker records for completed steps where the target is a lead
            List<ActionCadenceStepTracker> stepTrackers = [SELECT Id, ActionCadenceStepId, ActionCadenceName, TargetId, StepType, StepTitle
                                                           FROM ActionCadenceStepTracker
                                                           WHERE     Id IN :recordIds 
                                                                 AND State = 'Completed'
                                                                 AND Target.Type = 'Lead'
                                                                 AND StepTitle LIKE 'First Touch%'];
    
            if(stepTrackers != null && stepTrackers.size() > 0) {
                System.debug('Found ' + stepTrackers.size() + ' step tracker events.');
                
                List<Lead> leads = new List<Lead>();
                for(ActionCadenceStepTracker stepTracker : stepTrackers) {
                    System.debug('Adding the lead ID  ' + stepTracker.TargetId + ' to Lead list.');
                    Lead lead = new Lead(Id=stepTracker.TargetId, Status='Contacted');
                    leads.add(lead);
                }
                            
                update leads;
            } else {
                System.debug('Did not find any completed First Touch step trackers that are related to leads');
            }
        }
    }

此变更事件触发器会迭代Trigger.New中每个收到的变更事件消息。对于每个事件,我们会获取触发事件的 ActionCadenceStepTracker 的 ID。然后,我们使用步骤跟踪器的 ID 查询 ActionCadenceStepTracker 记录。我们检查以验证相关步骤的名称是 First Touch,状态是 Completed,节奏的目标是潜在客户。

如果节奏步骤满足该条件,相关潜在客户的状态将更新为Contacted

验证触发器

设置日志级别,以从 Apex 触发器捕获调试消息,然后验证新触发器是否更新潜在客户的状态。

  1. 从“设置”中,在快速查找框中输入调试日志,然后选择调试日志
  2. 单击新建
  3. 对于跟踪实体类型,选择自动流程
  4. 选择日志收集的时间段。我们建议一小时或更短。
  5. 对于调试级别,单击新建调试级别。为名称输入 CustomDebugLevel,然后接受其他默认选择。
  6. 保存更改。
  7. 在 Sales Engagement 中,查找包含“首次接触”步骤的节奏。将此步骤设置为“已完成”。
  8. 验证潜在客户的状态是否更新为“已联系”。
  9. 在调试日志中,单击自动进程日志旁边的查看,以查看新触发器中的 System.debug 消息。
 
正在加载
Salesforce Help | Article