【问题标题】:Trigger new apex触发新顶点
【发布时间】:2017-05-30 12:32:23
【问题描述】:

我正在尝试为 Account 对象上的插入事件之前编写触发器。

  trigger DeduplicationAccount on Account (before insert) {        
       //Get all the accounts in action in 'insert'
       Account[] inputAccountList = Trigger.NEW;

我正在尝试在我的输入帐户列表中获取相对的帐户列表。 举例来说,我正在尝试在我的触发器中获取姓氏 = 'XXX' 的帐户 new。

所以,我是这样写的: // 这里,listOfSurname 包含一个带有 'XXX' 的姓氏列表

for(Account ac: Trigger.new){
       List<Account> accountDuplicate = [Select ac.rr_First_Name__c, ac.rr_Last_Name__c  From 
       Account ac where ac.rr_Last_Name__c IN : listOfSurname];
       System.debug('accountDuplicate: '+ accountDuplicate);
       }

但是,尽管我输入了这个列表,但该列表始终为 0,一个帐户的姓氏为“XXX”。

【问题讨论】:

    标签: list triggers salesforce apex


    【解决方案1】:

    Trigger.New 具有记录的所有信息,我们可以使用它来验证任何条件。我在下面改写了您的查询,以检查 Trigger.new 中每个帐户的姓氏是否是列表的一部分。

    for(Account ac: Trigger.new){
       for(String s: listOfSurname){
          if (ac.rr_Last_Name__c == s){
             System.debug('accountDuplicate: '+ ac);
             break;
          }
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-26
      • 1970-01-01
      • 1970-01-01
      • 2017-05-01
      • 2016-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多