Если используется связь встроенного объекта с настраиваемым объектом, вам необходимо прочитать пример на этой странице документации. Общие сведения об именах отношений, настраиваемых объектах и настраиваемых полях .
Вам нужно найти определение поля вашего настраиваемого поля Event__c.Lead_Promo_Model__c
, которое связано с Contact
(это отношение является следствием вашего условия WHERE), и прочитать строки «Метка связанного списка» и «Имя дочернего отношения». Оба, вероятно, являются «Контакты» по умолчанию, но первая может быть любой строкой, а вторая - любым именем API. Затем вы добавляете «__r» к элементу «Имя дочернего отношения».
Вы заменяете (SELECT Contact.Gender__c,... FROM Contact)
на (SELECT Contact.Gender__c,... FROM Contact__r)
. См. Contact__r
заменено . Вот и все.
Я ожидаю, что все остальные части исправны или вы легко можете их исправить. Никто другой не знает имен ваших настраиваемых полей. Вы можете убедиться, что все, кроме вложенного SELECT, работает, а затем добавить подзапрос с собственными полями ... (SELECT Contact.Id FROM Contacts__r) ...
и, наконец, также с настраиваемыми полями Contact.
Второй снимок экрана в документации немного устарел без «Связанного списка» Метка ", но для SOQL это не важно.