有的时候我们可能有这样的需求,当某个字段为特定的值情况下,便锁定此条记录,仅允许Profile为System Admin的用户修改或者解锁,其他的用户只能查看此条记录,不能修改此条记录,这种情况下我们就的需要锁定记录(Lock Record)。

锁定记录(Lock Record)可以通过Process Builder以及Approval Processes实现功能。本人最开始用的自己申请的免费帐户使用Custom Object来进行测试,发现的尴尬的事情就是Profile为System Admin的账户可以看到相关创建的Tab,并且可以锁定记录,但是其他非System Admin的账户没法看到相关的tab,更没法查看被锁定的记录了,所以为了测试其是否可以锁定记录,使用系统表Opportunities来进行测试。步骤如下:

1.Setup->Build->Create->Workflow&Approvals->Process Builder或者直接在搜索栏搜索Process Builder,点击进入后点击右上角的new

2.输入相关信息后点击OK

3.选择需要操作的Object,按照自己需要设置执行状态

4.设置条件,条件可以是标准的条件抑或使用formula方式设置判断条件,在设置条件时,可以设置多个条件,按照条件的逻辑可以选择与,或,或者其他自定义逻辑

5.设置action,action type有如下很多种,在这里可以选择Apex或者Submit for Approval,因为apex代码可以通过Approval类调用lock()方法,在这里选择通过配置Approval方式而不是写代码方式进行。

6.输入具体信息后点击save,然后点击右上角的Activate,然后点击Back To SetUp,回到Set Up页面。

7.SetUp->Build->Create->Workflow&Approvals 点击进入,在Manage Approval Processes For:选择Opportunity,在下方显示Use Standard Setup Wizard

8.输入Approval的具体信息以后,点击Next

9.选择执行的条件,如果对Approval Process不熟悉的移步Approval Process学习

10.指定Approval 字段和记录访问的配置,这里做默认的配置即可,然后点击Next

11.选择Approval需要的通知的email模板,当前不需要通知

12.选择在Approval Page Layout展现的字段,因为字段不需要展示,所以直接默认,Next

13指定Submitter,按照自身需求,这里默认。点击Save

14.save以后选择创建approval step,点击Go

15.输入基本信息后点击Next

16.选择Enter step方式,然后选择formula方式,在formula中输入false,点击Next

17选择分配的审批者,按需选择,这里选择默认的,点击Save

18.选择No,I'll do this later

19.将Approval设置成Activate,置成以后效果如下所示

20.效果演示,通过当前用户修改一条Opportunities记录,将Stage项修改成Closed Won,则Save以后此条记录便Lock。管理员可以拥有UnLock Record的权限

21.用普通用户登录,普通用户的Profile选择可以查看Opportunities这个Tab权限的Profile

22.登陆后此条记录只能只读,如果修改便报错误。

总结:通过Process Builder以及Approval Process配置方式可以通过点击方式便实现特定情况下锁定记录功能,相对方便,此种方式缺点为无法通过当前登录用户的Permission Set来设置,如果项目通过Permission Set来设置权限,则无法通过上述的方式设置,可以考虑在第5步的时候选择Apex来完成此种功能。Apex代码可以很轻松获取当前用户的Permission Set以及通过Approval类可以很轻松的调用Lock()方法。

salesforce 零基础学习(三十五) 通过Process Builder和Approval Processes锁定记录(Lock Record)的更多相关文章

  1. salesforce 零基础学习(十九)Permission sets 讲解及设置

    Permission sets以及Profile是常见的设置访问权限的方式. Profile规则为'who see what'.通过Profile可以将一类的用户设置相同的访问权限.对于有着相同Pro ...

  2. salesforce 零基础学习(十八)WorkFlow介绍及用法

    说起workflow大家肯定都不陌生,这里简单介绍一下salesforce中什么情况下使用workflow. 当你分配许多任务,定期发送电子邮件,记录修改时,可以通过自动配置workflow来完成以上 ...

  3. salesforce 零基础学习(十六)Validation Rules & Date/time

    上一篇介绍的内容为Formula,其中的Date/time部分未指出,此篇主要介绍Date/time部分以及Validation rules. 本篇参考PDF: Date/time:https://r ...

  4. salesforce零基础学习(九十五)lightning out

    随着salesforce对lightning的推进,越来越多的项目基于lightning开发,导致很多小伙伴可能都并不了解classic或者认为不需要用到classic直接就开始了lightning的 ...

  5. salesforce零基础学习(一百一十)list button实现的一些有趣事情

    本篇参考: salesforce零基础学习(九十五)lightning out https://developer.salesforce.com/docs/component-library/docu ...

  6. salesforce 零基础学习(五十二)Trigger使用篇(二)

    第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...

  7. salesforce 零基础学习(三十六)通过Process Builder以及Apex代码实现锁定记录( Lock Record)

    上一篇内容是通过Process Builder和Approval Processes实现锁定记录的功能,有的时候,往往锁定一条记录需要很多的限制条件,如果通过Approval Processes的条件 ...

  8. salesforce零基础学习(八十)使用autoComplete 输入内容自动联想结果以及去重实现

    项目中,我们有时候会需要实现自动联想功能,比如我们想输入用户或者联系人名称,去联想出系统中有的相关的用户和联系人,当点击以后获取相关的邮箱或者其他信息等等.这种情况下可以使用jquery ui中的au ...

  9. salesforce零基础学习(一百零五)Change Data Capture

    本篇参考: https://developer.salesforce.com/docs/atlas.en-us.232.0.api_streaming.meta/api_streaming/using ...

随机推荐

  1. 四川软件人才网:打造四川最专业的IT人才招聘平台

    四川软件人才网(www.tfsp.net),原名:天府软件人才网:为了更好的发展和拓展的业务需要,更名为:四川软件人才网,强力打造四川最专业的IT人才的招聘平台. 网站依托四川软件人才社区,微博,微信 ...

  2. jsp_内置对象_request

    request内置对象是使用最多的一个对象,其主要作用是接收客户端发送来的请求信息.如请求的参数.发送的头信息等都属于客户端发送来的信息.request是javax.servlet.http.Http ...

  3. Oracle安装:64位电脑安装64位Oracle、PLSQL步骤

    步骤: 1.安装64位Oracle 2.安装64位PLSql 3.将11.2.0.win32的压缩包解压,放在Oracle的安装目录:product下 4.配置PLSQL参数: Tools -> ...

  4. UVaLive 7143 Room Assignment (组合数+DP)

    题意:有 n 个客人,m个房间,每个房间可住ci个人,这 n 个人中有 t 对双胞胎,sum{ci}  = n 问你有多少种住房方法. 析:计数DP,dp[i][j] 表示前 i 个房间,还剩下 j ...

  5. 使用Glyph Designer创建位图字体

     使用Glyph Designer创建位图字体 转http://book.2cto.com/201210/6610.html   <iOS 5 cocos2d游戏开发实战(第2版)>将引导 ...

  6. Windows下Spark单机环境配置

    1. 环境配置 a)  java环境配置: JDK版本为1.7,64位: 环境变量配置如下: JAVA_HOME为JDK安装路径,例如D:\software\workSoftware\JAVA 在pa ...

  7. IOS中CoreData浅析

    CoreData简介: 什么是CoreData? Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中, ...

  8. iOS开发零基础--Swift教程 可选类型

    可选类型的介绍 注意: 可选类型时swift中较难理解的一个知识点 暂时先了解,多利用Xcode的提示来使用 随着学习的深入,慢慢理解其中的原理和好处 概念: 在OC开发中,如果一个变量暂停不使用,可 ...

  9. OPC的理解Open Packaging Conventions

    Open Packaging Conventions (OPC) 博客地址:www.cnblogs.com/icmzn OPC是一个文件容器技术.被微软创建,用来存储XML或者非XML文件结合起来的规 ...

  10. css+js回到顶部

    .backToTop { display: none; width: 18px; line-height: 1.2; padding: 5px 0; background-color: #000; c ...