我想定制属于'salesforce.com'平台的'Sales'应用程序。 有没有办法选择属于特定'机会ID'的所有'OpportunityProducts'对象?
[SELECT Id FROM OpportunityProduct WHERE Opportunity =:opportunitId];
当我执行上面的代码以选择那些'OpportunityProduct'时,我收到了以下错误。如果有人有任何想法请更新我。谢谢。
Save error: sObject type 'OpportunityProduct' is not supported. If you are attempting to use a custom object, be sure to append the '__c' after the entity name. Please reference your WSDL or the describe call for the appropriate names.
答案 0 :(得分:2)
当您需要实际产品而不仅仅是订单项时,另一种方法是完成此操作,如下所示。首先获得机会:
List<Opportunity> opps = [SELECT Id, Name FROM Opportunity LIMIT 1000];
然后循环以创建机会ID列表
List<Id> oppIds = new List<Id>();
for(Opportunity o : opps)
{
oppIds.add(o.Id);
}
现在获取属于您机会的实际产品 ......
List<OpportunityLineItem> oppProds = [SELECT Id, PricebookEntry.Product2.Name, PricebookEntry.Product2.Family
FROM OpportunityLineItem
WHERE OpportunityId IN :oppIds];
希望有所帮助。