Возможности фильтрации по задачам с использованием SOQL?
Я хотел бы получить все идентификаторы возможностей, у которых есть задача, связанная с определенным человеком.
Я пробовал следующее
Выберите ID из Возможности, где AccountID IN (Выберите AccountID В ЗАДАЧЕ, ГДЕ CreatedBy.Name='Person' ИЛИ LastModifiedBy.Name='Person')
Но я получаю следующую ошибку: ОШИБКА в строке:1: Столбец:80 Объект 'ЗАДАЧА' не поддерживается для полусоединений внутреннего выбора "
Есть ли работа вокруг этого?
1 ответ
Просто в SOQL я не уверен, есть ли способ сделать это. Но если вы делаете это как часть триггера / класса, вы можете сделать что-то вроде этого:
List<Id> accountIds;
List<Task> tasks = [Select AccountID From TASK WHERE AccountId != null AND (CreatedBy.Name='Person' OR LastModifiedBy.Name='Person')];
for(Task task : tasks) {
accountIds.add(task.AccountId);
}
List<Opportunity> opportunities = [Select ID from Opportunity where AccountID IN :accountIds];