salesforce 零基础学习(五十)自定义View或者List以及查看系统原来的View或者List
salesforce给我们提供了标准的页面,比如标准的页面包括标准的列表和标准的详细页视图。有的时候我们想要自定义视图,比如做一个项目的时候不希望使用者直接通过ID查看到标准的详细页,而是跳转到指定处理过的详细页,这个时候做法如下:
1.创建相关详细页的Controller,此Controller的构造函数应涵盖ApexPages.StandardController,ApexPages.StandardSetController两个参数
public without sharing class CompanyDetailController {
private Map<String,String> params; public Company_Info__c companyInfo{get;set;} public CompanyDetailController(ApexPages.StandardController controller) {
init();
} public CompanyDetailController(ApexPages.StandardSetController controller) {
init();
} public void init() {
params = ApexPages.currentPage().getParameters();
String companyInfoId = params.get('id');
String fetchCompanyInfo = 'SELECT Company_Code_Unique__c, Company_Name__c, Company_Phone__c, Company_Place__c, Company_Type__c, CreatedDate,Employees_Number__c, Id FROM Company_Info__c where Id = :companyInfoId';
List<Company_Info__c> companyInfoList = Database.query(fetchCompanyInfo);
if(companyInfoList == null || companyInfoList.size() == 0) {
companyInfo = null;
} else {
companyInfo = companyInfoList.get(0);
}
}
}
CompanyDetailController
2.创建相应的page,此page用于显示view的布局
<apex:page standardController="Company_Info__c" extensions="CompanyDetailController">
<apex:pageBlock >
<apex:panelGrid columns="2" style="width:100%;" rendered="{!companyInfo == null}">
不存在此ID对应的记录,请重新检查相关ID
</apex:panelGrid>
<apex:panelGrid columns="2" style="width:100%;" rendered="{!companyInfo != null}">
<apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Company_Code_Unique__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Company_Code_Unique__c}"/> <apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Company_Name__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Company_Name__c}"/> <apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Company_Phone__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Company_Phone__c}"/> <apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Company_Place__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Company_Place__c}"/> <apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Company_Type__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Company_Type__c}"/> <apex:outputLabel value="{!$ObjectType.Company_Info__c.Fields.Employees_Number__c.Label}" style="color: #830051;line-height: 24px;"/>
<apex:outputLabel value="{!companyInfo.Employees_Number__c}"/>
</apex:panelGrid>
</apex:pageBlock>
</apex:page>
CompanyDetailPage
3.修改Company Info这个object的view,修改成override with visualforce Page
4.显示效果:当在窗口输入:https://c.ap2.visual.force.com/a032800000JG8c0AAD访问以后会自动跳转到
https://c.ap2.visual.force.com/apex/CompanyDetailPage?id=a032800000JG8c0AAD&sfdc.override=1
通过以上几步可以实现自定义view的操作。那么问题来了,如果我是admin,我想通过这条记录ID,查看他的原始信息,查看他的审批流程,但是这条记录的view视图已经被override了怎么办,可以采用此种操作进行查看原始的记录view视图。
https://ap2.salesforce.com/a032800000JG8c0AAD?nooverride=1 此种访问便可以显示原来的view视图
总结:此篇主要想强调的是view视图被override以后想要看原始的视图方式,相信很多人都会,在此写成一篇博客,方便自己以后忘记时查看,此篇如果有错误的地方欢迎指正,有不懂的地方欢迎留言。
salesforce 零基础学习(五十)自定义View或者List以及查看系统原来的View或者List的更多相关文章
- salesforce 零基础学习(十九)Permission sets 讲解及设置
Permission sets以及Profile是常见的设置访问权限的方式. Profile规则为'who see what'.通过Profile可以将一类的用户设置相同的访问权限.对于有着相同Pro ...
- salesforce 零基础学习(十八)WorkFlow介绍及用法
说起workflow大家肯定都不陌生,这里简单介绍一下salesforce中什么情况下使用workflow. 当你分配许多任务,定期发送电子邮件,记录修改时,可以通过自动配置workflow来完成以上 ...
- salesforce 零基础学习(十六)Validation Rules & Date/time
上一篇介绍的内容为Formula,其中的Date/time部分未指出,此篇主要介绍Date/time部分以及Validation rules. 本篇参考PDF: Date/time:https://r ...
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
- salesforce零基础学习(一百零五)Change Data Capture
本篇参考: https://developer.salesforce.com/docs/atlas.en-us.232.0.api_streaming.meta/api_streaming/using ...
- salesforce零基础学习(八十)使用autoComplete 输入内容自动联想结果以及去重实现
项目中,我们有时候会需要实现自动联想功能,比如我们想输入用户或者联系人名称,去联想出系统中有的相关的用户和联系人,当点击以后获取相关的邮箱或者其他信息等等.这种情况下可以使用jquery ui中的au ...
- salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件
在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...
- salesforce零基础学习(一百一十)list button实现的一些有趣事情
本篇参考: salesforce零基础学习(九十五)lightning out https://developer.salesforce.com/docs/component-library/docu ...
- salesforce 零基础学习(六十八)http callout test class写法
此篇可以参考: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_restfu ...
- salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见
项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随 ...
随机推荐
- haxe jni调用输入法
public static void startInputDialog(final String title, final String text, final String buttonLabel, ...
- Leetcode Delete Node in a Linked List
Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...
- CODEVS 天梯 代码记录
所有水题均被折叠 Lv.1 青铜 1201 #include<iostream> #include<cstring> #include<algorithm> #in ...
- mac搭建nginx与php
第一步:关闭Apache及开机启动 要使用nginx,最好停用mac中自带的Apache.停用很简单: sudo launchctl unload -w /System/Library/LaunchD ...
- ceil 模块
# 有时需要得到一个最小的整数,而这个数只能比自己大或相等,不能小于自己 #如: 2.1 我们需要得到的最小整数为3,即使后一位只有很小的一部分,一般用于分页 from math import cei ...
- Jquery垂直下拉二级菜单
自己做了一个基于Jquery 的垂直下拉二级菜单功能,直接看图: Html的代码如下: <!DOCTYPE html> <html> <head> <meta ...
- springmvc2 一个控制器写多个方法(非注解方式)
出处:http://blog.csdn.net/xuewenke/article/details/23895999 springmvc2 一个控制器写多个方法(非注解方式) 分类: spring 20 ...
- ios设备中openGL所支持的最大纹理尺寸
这几天碰到一个在iphone4上显示图片未黑色矩形的bug,在其他机器上都正常 最后发现是图片打包尺寸的关系,iphone4无法读取2048以上大小的单个图片,所以其中的图片都显示成了黑色,希望对碰到 ...
- java学习中的一些疑惑解答
一.java中的枚举类型: 在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的.例如星期一到星期日七个数据元素 ...
- Swift库运行崩溃
报错如下: 解决方法: 退出 Xcode 找到 DerivedData 文件夹 删除 (路径: ~/Library/Developer/Xcode/DerivedData) 删除 com.apple. ...