zoukankan      html  css  js  c++  java
  • 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.如果篇中有描述错误的地方欢迎指正,如果有疑问的地方欢迎留言。

  • 相关阅读:
    Spark Streaming:大规模流式数据处理的新贵
    HBase源码学习系列
    Hadoop源码分析之Configuration
    sql server存储引擎启动错误(SQL Server could not spawn FRunCM thread)
    Redis(1.15)Redis监控(待写)
    Redis(1.14)Redis日常管理与维护
    Redis(1.13)Redis cluster 分布式集群手动配置
    (5.3.5)数据库迁移——数据库与文件组的位置迁移(同一实例)
    Redis(1.12)Redis cluster搭建常见错误
    Redis(1.11)Redis4.0.11 cluster 分布式集群搭建
  • 原文地址:https://www.cnblogs.com/zero-zyq/p/5577281.html
Copyright © 2011-2022 走看看