我正在使用REST API使用Java代码访问Salesforce。我的Salesforce帐户中有一个"实体"选项卡。我需要在此选项卡页面中放置一个自定义页面块,以显示已加载到Salesforce的PNG图像。
我知道可以通过Visualforce标记语言和Apex类创建自定义页面,从而从Salesforce中发现的标准对象访问数据。但是,这些都是为了创建全新的页面,而我需要为"实体"选项卡页面添加自定义页面块。
我可以编辑"实体"选项卡的Visualforce标记以添加我的新部分以显示我的图像。如果是的话。有什么更好的方法来实现这一目标吗?
我已经在网络上浏览了有关此主题的大多数文档。但这让我完全困惑。
"实体"选项卡实际上是帐户标准对象的表示形式。我的要求是在我单击任何帐户名时调用自定义的VisualForce页面。
这是我为满足这一要求所做的。我创建了一个带有以下代码的VisualForce页面: -
<apex:page standardController="Account" extensions="AccountImageController">
<apex:pageBlock title="BluePrint Image">
<apex:form >
<apex:image url="/servlet/servlet.FileDownload?file={!FileId}"/>
</apex:form>
</apex:pageBlock>
<apex:detail />
这基本上将显示我上传的图像作为某些帐户的附件。如您所见,它引用了看起来像这样的Apex类。
Public Class AccountImageController {
String recId;
public AccountImageController(ApexPages.StandardController controller) {
recId = controller.getId();
}
public String getFileId() {
String fileId = '';
List<Attachment> attachedFiles = [select Id from Attachment where parentId =:recId order By LastModifiedDate DESC limit 1];
if( attachedFiles != null && attachedFiles.size() > 0 ) {
fileId = attachedFiles[0].Id;
}
return fileId;
}
}
现在,我覆盖了帐户标准对象的链接,并将其链接到上面的VisualForce页面。保存并单击"客户端/帐户"选项卡。单击任何帐户名称,图像显示为自定义页面块。
我认为阅读此书的人已经与Salesforce的基础知识有关,该基础是创建Visualforce页面,Apex类并覆盖"帐户"选项卡中的链接。
对于那些没有的人,请参考标准文档或Google寻求帮助。希望这有助于那些坚持这个的人。