0

I am trying to get all the Account's IDs owned by a particular user.But I am getting error.

trigger UserGoingLeave on User (before update) {
User userOnLeave = Trigger.new();
Id delegatedApprover = userOnLeave.DelegaterApproverId;
List<id> accId = [SELECT Id FROM Account WHERE OwnerId = :userOnLeave.Id];   
}
4

2 回答 2

0

不是 Trigger.new() 而是 Trigger.new。但是您需要所有 ID,我建议使用以下方法

trigger UserGoingLeave on User (before update) {
  Set<ID> acctId 
     = new Map<ID, Account>([select ID from Account where OwnerID in :Trigger.newMap.keySet() ])
        .keySet();

}

就是这样。如果您需要一个数组,只需从集合中创建 List

于 2014-02-06T14:37:21.747 回答
0

当您调用 Trigger.new 时,这将返回 DML 操作中涉及的对象列表(您是否只更新了一条记录并不重要)。我认为 salesforce 的前提是您必须放大每个触发器。

于 2013-12-14T23:43:30.057 回答