如何在SOQL中检索父对象字段值以在VF页面中显示

时间:2017-03-12 09:47:10

标签: salesforce visualforce soql

我是SFDC的新手,很难通过子对象上的SOQL查询来检索父对象字段。 我有两个对象,即机会和范围,其中范围有机会查找。

这是我在Controller中编写的查询。

ScopeController.cls:

 List<Scope> scopeList=[Select  id,Name,ScopeValue__c,Opportunity__c,Opportunity__r.opAmount__c from Scope__c];
 System.debug('scopeList : '+scopeList);

访问以下VF页面中的scopeList值。

ScopePage:

 <apex:repeat value="{!scopeList}" var="s">
  <tr>
    <td>{!s.Name}</td>
    <td>{!s.ScopeValue__c}</td>
    <td>{!s.Opportunity__c}</td>
    <td>{!s.Opportunity__r.opAmount__c}</td>
 </tr>
</apex:repeat>

但是在上面的VF页面中无法显示s.Opportunity__r.opAmount__c的值,它是空的。我在Controller中调试过,SOQL查询本身没有检索&#34; Opportunity__r.opAmount__c&#34;因此在VF页面显示为空。

1 个答案:

答案 0 :(得分:0)

一个原因可能是您的个人资料无法访问此字段(Opportunity__r.opAmount__c)。

查询看起来很好。您是否在标准布局上看到此值。您的个人资料是否可以访问此字段?

  1. 从字段对象的管理设置中,转到字段区域。
  2. 选择您要修改的字段。
  3. 点击查看字段辅助功能。