salesforce 零基础学习(二十九)Record Types简单介绍

在项目中我们可能会遇见这种情况,不同的Profile拥有不同的页面,页面中的PickList标签可能显示不同的值。这个时候,使用Record Types可以很便捷的搞定需求。

Record Types允许在相同的object中为数据定义多个UI。用户通过Profile进行分组,不同的Profile可以设置不同的Page Layout 以及显示不同的PickList的item值。

简单需求描述如下(以Goods__c为例):

1.Profile为Admin的用户可以看到所有的字段,Profile为其他的用户不能看到GoodsCostPrice__c;

2.Profile为Admin的用户可以看到类型为PickList的GoodsBrand__c所有值,Profile为其他的用户只能看到GoodsBrand__c的一部分值。

(注:需求只是随便写的)

实现上述功能可以通过Record Types实现,先定义两个Page Layouts,使不同的Profile显示不同的页面,然后定义两个Record Types,使不同的Profile显示的PickList的值不同。

 一.创建PageLayout

setup->Create->Objects->Goods__c进入具体的sObject.在Page Layouts中创建两个Page Layout

Goods Layout For Admin显示所有的字段,如下图所示

Goods Layout For Other User显示除GoodsCostPrice以外的所有字段,如下图所示

二.创建Record Types

创建两个Record Types,分给不同的Profile,如下图所示

其中ShowUIByAdmin创建步骤如下:

1.点击New后输入具体的信息,然后选择需要设置可见的Profile后点击Next;

2.分配不同的Page Layouts给相关的Profile;

3.点击Save以后,会显示下图所示页面,点击下方Edit,修改相关的PickList的Item Value值;

4.修改GoodsBrand的显示项后Save,则名为ShowUIByAdmin的Record Type创建成功;

5.按照上述1-4创建另外的Record Types,分配相关的Page Layouts以及设置不同的Picklist Values的值。

显示效果如下:

Profile为Admin的显示页面

Profile为other user的显示页面

总结:Record Types可以基于不同的Profile设置不同的显示页面以及不同的PickList的Values,并且只能基于Profile,如果项目通过Permission Set进行分组则无法使用Record Types.如果篇中有描述错误的地方欢迎指正,如果有疑问的地方欢迎留言。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏图像识别与深度学习

《Android》Lesson19-广播1

1619
来自专栏林德熙的博客

win10 uwp 获得焦点改变 如何判断应用是否获得焦点

本文讲的是当我们应用失去焦点时,我们获得事件,当我们应用获得焦点,同样获得事件。同时,在应用不可以见时,我们也可以获得。

581
来自专栏KK的小酒馆

Service的跨进程开发Android开发高级进阶

Service的跨进程通信主要由两种Android提供的方法进行,一个是AIDL,通过创建一个AIDL文件来完成,另一个是利用Messenger,发送Messa...

872
来自专栏运维前线

快速学习Docker和容器技术

基于浏览器交互式学习Docker和容器 参考:https://www.katacoda.com/courses/docker 部署第一个Docker容器 Do...

2075
来自专栏林德熙的博客

win10 uwp 拖动控件 Margin 移动Canvas 拖动控件Manipulation 拖动控件

我们会使用控件拖动,可以让我们做出好看的动画,那么我们如何移动控件,我将会告诉大家多个方法。其中第一个是最差的,最后的才是我希望大神你去用。

290
来自专栏向治洪

IntentService简介

在manifest中声明服务 和activity、content provider一样,服务也必须要在AndroidManifest文件中进行声明是<app...

17110
来自专栏XAI

【人工智能】动物、植物、车型、菜品、LOGO识别示例代码

图像识别部分接口Java-API调用示例代码 https://gitee.com/xshuai/ai/不是完整的web项目大家没必要下载运行。复制|下载相关代码...

52911
来自专栏Java学习123

Oracle lsnrctl--监听器的启动和关闭

2678
来自专栏Android随笔

一个基础的Android项目

AndroidBasicProject是一个简易的Android基础项目,方便您快速进行开发。 包含以下内容:

562
来自专栏GuZhenYin

脑洞大开之采用HTML5+SignalR2.0(.Net)实现原生Web视频

前言  - -,我又来了,今天废话不多说,我们直接来实现Web视频聊天. 采用的技术如下: HTML5 WebRTC SignalR2.2.0 localRes...

1965

扫码关注云+社区