您现在的位置是:首页 >技术教程 >salesforce 中 Account 转移给新 Owner 后如何仅转移 Case,而不转移 Opportunity网站首页技术教程
salesforce 中 Account 转移给新 Owner 后如何仅转移 Case,而不转移 Opportunity
                简介salesforce 中 Account 转移给新 Owner 后如何仅转移 Case,而不转移 Opportunity            
            在 Salesforce 中,当更改 Account Owner 时,系统默认会将所有相关的 Opportunities(商机) 和 Cases(案例) 也一并转移给新的 Account Owner。如果你希望 仅转移 Case,而不转移 Opportunities,可以考虑以下几种方法:
方案 1:手动调整(适用于小规模调整)
- 更改 Account Owner 时,在弹出的“确认所有权转移”窗口中: 
  
- 取消勾选 “Transfer open opportunities”(转移开放的商机) 选项。
 - 保持勾选 “Transfer open cases”(转移开放的案例)。
 
 - 确认后提交,只有 Case 会转移,而 Opportunities 仍然归原来的 AM。
 
方案 2:流程自动化(适用于大规模调整)
如果你需要自动化这个流程,可以通过 Flow(流程构建器) 或 Apex 触发器 来实现:
方法 1:使用 Flow
- 进入 Setup(设置) > Flow(流程)。
 - 选择 Record-Triggered Flow(记录触发流)。
 - 触发条件: 
  
- 当 Account Owner 变更 且 新 Owner 是 BS 时触发。
 
 - 添加决策逻辑: 
  
- 如果 Account Owner 发生更改,则更新所有 Case 的 Owner 为新的 BS。
 - 不包含 Opportunities 的变更。
 
 - 保存并激活 Flow。
 
方法 2:使用 Apex Trigger
如果 Flow 无法满足需求,可以使用 Apex Trigger 进行更细粒度的控制:
trigger PreventOpportunityTransfer on Account (before update) {
    for (Account acc : Trigger.new) {
        Account oldAcc = Trigger.oldMap.get(acc.Id);
        
        // 只有当 Owner 发生变更时执行
        if (acc.OwnerId != oldAcc.OwnerId) {
            // 查找该 Account 下的所有 Opportunities,并恢复 OwnerId
            List<Opportunity> opps = [SELECT Id, OwnerId FROM Opportunity WHERE AccountId = :acc.Id];
            
            for (Opportunity opp : opps) {
                opp.OwnerId = oldAcc.OwnerId; // 保持原来的 Owner
            }
            update opps; // 更新商机,保持原有 Owner
        }
    }
}
 
解释:
- 当 Account Owner 发生变更时,触发器会自动 保持 Opportunities 的 Owner 不变,从而只转移 Cases。
 
方案 3:使用 Data Loader 进行批量更新
如果只是一次性调整,可以:
- 先导出 需要修改的 Account 及其相关的 Opportunities 和 Cases。
 - 手动修改 需要转移的 Cases 的 Owner,而不修改 Opportunities 的 Owner。
 - 使用 Data Loader 或 Workbench 进行批量更新。
 
总结
- 手动操作 适用于小量数据,直接取消勾选“Transfer open opportunities”即可。
 - Flow 自动化 适用于需要规则化操作,能避免人工操作失误。
 - Apex 触发器 适用于更复杂的逻辑,比如防止系统意外转移 Opportunities。
 - Data Loader 批量更新 适用于一次性调整大批量数据。
 
你可以根据需求选择合适的方法,如果你的 Salesforce 版本支持 Flow,推荐优先尝试 Flow 方案,无代码即可实现。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。
        
    
        
    
            




U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结