-1

• 在设置菜单上创建名为“帐户”的标准对象的自定义字段 • 添加以下自定义字段 字段名称 数据类型 约束 优先级选项列表 (1, 2, 3, 4, 5)

• 在设置菜单上创建一个名为“Customer”的自定义对象 • 添加以下自定义字段 字段名称 数据类型 约束 标题 选项列表(先生、夫人、小姐)
First_Name Text(100) 必填 Last_Name Text(100) 必填 年龄
地址 Text(255 ) )
性别选项列表(男、女)
参考。帐户查找(帐户)

• 基于新创建的自定义对象“客户”创建一个新的触发器类来处理重复的客户记录。• 触发器也应处理批量操作 • 业务要求如下: o 触发器应同时处理“客户”上的插入和更新操作 o 标题、名字、姓氏组合必须是唯一的 o 在任何给定时间,在系统 o 如果发现重复记录,最新的记录应该在系统中,而之前的记录应该被删除 o 如果最新的客户记录有“参考”。帐户”的优先级低于找到的重复记录;更改“参考。如果在重复记录中找到最新客户记录的“帐户”到更高优先级帐户。始终最新的客户记录与其副本应具有最高优先级的帐户。(注:优先级 1 为最小值,优先级 5 为最大值)

请尽快在 Salesforce 解决方案中为此提供答案。请建议如何在触发器中删除和添加新记录。

4

1 回答 1

0

我已经完成了处理重复记录和删除重复记录的工作。我坚持使用优先级较低的帐户获取 Ref.Account。如何访问 Account 对象优先级字段并与当前记录 Account Priority 字段进行比较?请尽可能尽快回复。

trigger CustomerTigger on Customer__c(Before insert, Before update) {
    List < Customer__c > StaActiList = [Select ID, First_Name__c, Last_Name__c, Title__c, Address__c, Gender__c, RefAccount__c
    from Customer__c];
    for (Customer__c opp: Trigger.new) {
        for (Customer__c sa: StaActiList) {
            try {

                if (sa.First_Name__c == opp.First_Name__c && sa.Last_Name__c == opp.Last_Name__c && sa.Title__c == opp.Title__c) {
                    List < Id > lstId = new List < Id > ();
                    List < Customer__c > existoppList = [Select Id from Customer__c where Id = : sa.Id];
                    delete existoppList;
                }

            } catch (Exception Ex) {

            }
        }
    }
}
于 2015-10-05T15:28:14.900 回答