【发布时间】:2014-03-03 22:39:12
【问题描述】:
我有一个自定义 Visualforce 页面,允许用户输入和修改机会产品信息。
我正在使用 apex:pageblockTable 来显示一个列表,其中包含与商机相关的行项目。我想根据相关 PRODUCT2 对象中相关字段的值有条件地控制某些字段的显示行为,但我遇到了问题。
这是我的 Visualforce 代码:
<apex:column headerValue="{!$ObjectType.OpportunityLineItem.Fields.Circuit__c.Label}">
<apex:inputField value="{!s.Circuit__c}"
style="width:70px"
required="true" onkeyup="refreshTotals();"
rendered="{!s.Product2.ptype__c == 'Recurring'}"/>
</apex:column>
我的意图是根据最初填充此 OLI 的 Product2 记录的“ptype_c”字段中的内容,有条件地渲染/不渲染 s.Circuit_c 列/字段。
虽然代码编译没有问题,但当我执行它时,我收到错误“通过 SOQL 检索 SObject 行而没有查询请求的字段:OpportunityLineItem.Product2”
谁能帮我理解从 Apex 标签内部引用相关对象的正确语法?
非常感谢。
【问题讨论】:
标签: salesforce apex-code visualforce apex