salesforce 零基础学习(十八)WorkFlow介绍及用法
说起workflow大家肯定都不陌生,这里简单介绍一下salesforce中什么情况下使用workflow。
当你分配许多任务,定期发送电子邮件,记录修改时,可以通过自动配置workflow来完成以上操作而不是手工做这些工作。
一. WorkFlow配置
点击setup-->build-->create-->Workflow & Approvals-->workflow Rules或者在搜索栏中搜索workflow 然后选择workflow Rules.选择后会出现下图的引导页,用来描述workflow组成部分以及Workflow可以自动执行哪些种类型的action。从图中可以看到,可以执行Tasks,Email Alerts,Field Updates以及Outbound Messages.

点击Continue后进入列表页面,此页面显示已经创建的所有的Workflow rules。从描述信息中可以看到Workflow的执行流程为,当一条记录满足workflow rule标准条件时,便自动执行Workflow设置的action。

点击new rule 开始新建一条workflow rule,如下图所示,总共需要3步来创建一个workflow。
第一步为选择哪个Object进行workflow设置。

第二步为设置workflow的名称以及什么标准条件下才会自动执行此workflow的action,其中有几点需要注意:
- Evaluation Criteria的选择:系统默认情况下选择第三种,即当这条记录被创建或者被修改情况下校验下方校验规则,如果条件满足,则执行action,其中执行action部分还需要配置time trigger,这点在第三步加以描述。当选中第一种则只有当记录被创建时执行校验,选择第一种则这条记录最多只能执行一次workflow,选择第二种为每次添加或者修改操作时会执行下方校验,如果校验成功,则执行第三步的action,其中采用第二种方式则不需要配置time trigger,立即执行action操作。
2. Rule Criteria:这部分是workflow执行的关键,当只有workflow满足设置的校验的条件才可以执行相应的action,注意2的部分是一个下拉框,当选择另外一种formula evaluates to true的选项时,下方则变成了一个formula框,当校验条件为true情况下才会走相关的action;
3. Field/formula框:用于设置标准条件,当记录满足设置的标准条件才会触发workflow配置的action,这里需要注意的是,不是所有的formula函数都支持此处的formula, 使用时需要先查看一下所用函数是否支持workflow。

第三步为配置满足标准条件的action。分成4中情况:
1.New Email Alert:https://help.salesforce.com/apex/HTViewHelpDoc?id=customize_wfalerts.htm&language=en_US
2.New Field Update:更新此workflow关联的Object的字段值;
3.New Outbound Message:https://help.salesforce.com/apex/HTViewHelpDoc?id=workflow_managing_outbound_messages.htm&language=en_US

不要以为创建完以后WorkFlow就可以用了,因为创建后默认是不可用状态,需要将其置为可用。

二.WorkFlow的注意点
1.WorkFlow是在trigger执行以后(after trigger)满足条件才会执行的;
2.一个WorkFlow只能作用在一个单独的sObject上;
3.workflow的action可以设置为多个,如果有多个action情况下,先执行Field Update操作,在执行其他操作;
4.workflow rule formula中不允许使用$Label;
5.当sObject删除后,绑定其workflow也自动删除;
6.当想使用WorkFlow替代trigger时,确保将workflow置为Activate以前删除相关trigger,否则会抛出异常。
详细注意点请参见:https://help.salesforce.com/apex/HTViewHelpDoc?id=workflow_rules_considerations.htm&language=en_US
总结:使用workflow可以便捷的修改数据,分配任务等,但也相应的有很多的限制。在项目中,对于适合使用workflow的操作可以选择使用workflow,使用前应考虑其功能以及限制是否可以完成你需要的工作。
篇中如何有错误的地方欢迎指正,如果有问题需要提问欢迎留言。
salesforce 零基础学习(十八)WorkFlow介绍及用法的更多相关文章
- salesforce零基础学习(八十)使用autoComplete 输入内容自动联想结果以及去重实现
项目中,我们有时候会需要实现自动联想功能,比如我们想输入用户或者联系人名称,去联想出系统中有的相关的用户和联系人,当点击以后获取相关的邮箱或者其他信息等等.这种情况下可以使用jquery ui中的au ...
- salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见
项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随 ...
- salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件
在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...
- salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值
注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-fr ...
- salesforce零基础学习(八十五)streaming api 简单使用(接近实时获取你需要跟踪的数据的更新消息状态)
Streaming API参考链接: https://trailhead.salesforce.com/en/modules/api_basics/units/api_basics_streaming ...
- salesforce零基础学习(八十六)Ajax Toolkit (VF页面中使用及javascript action使用)
Ajax Toolkit 参考文档:https://resources.docs.salesforce.com/212/latest/en-us/sfdc/pdf/apex_ajax.pdf 在项目中 ...
- salesforce零基础学习(八十八)项目中的零碎知识点小总结(二)
通过做项目以及群里面的一些大神的聊天,总结一下关于项目中的两个知识点,以后当做参考. 一. 在custom setting中配置集成接口信息后刷sandbox的问题 我们做项目时,经常会遇见和其他平台 ...
- salesforce零基础学习(八十四)配置篇: 自定义你的home page layout
当我们进入salesforce系统或者切换app后,默认第一个看到的就是home页面.home页面简单的来说可以包括左侧(narrow component)和右侧(wide component)两部分 ...
- salesforce零基础学习(八十一)更改标准字段的label名称(Admin)
我们在开发中往往需要考虑国际化功能,salesforce 提供了国际化功能,在search部分搜索translate,便可以找到translate部分,从而对需要的进行translate.比如pick ...
- salesforce零基础学习(八十三)analytics:reportChart实现Dashboard(仪表盘)功能效果
项目中经常会用到Report以及Dashboard来分析汇总数据,Dashboard可以指定view as user,如果针对不同的用户需要显示其允许查看的数据,比如 根据role hierarch ...
随机推荐
- Centos 7下mysql的安装与配置
1,先下载好MySQ安装包并解压(不做详细说明). 2,上传解压后的MySQL安装包到虚拟机上. 3,安装MySQL [root@localhost /]# yum install mysql5.7. ...
- Js之AJAX
var xmlHttp; function createHttp() { try { xmlHttp = new XMLHttpRequest(); } catch (e) { xmlHttp = n ...
- 关于mha手动切换的一些记录(mha方案来自网络)
mha方案出自:http://www.cnblogs.com/xuanzhi201111/p/4231412.html 当主服务器故障时,人工手动调用MHA来进行故障切换操作,具体命令如下: 先停MH ...
- Python基于pandas的数据处理(二)
14 抽样 df.sample(10, replace = True) df.sample(3) df.sample(frac = 0.5) # 按比例抽样 df.sample(frac = 10, ...
- 初学python第一天
在学习了c++,java后自己又找到一门面向对象的技术.没错,它就是python.首先介绍一下自己所用的python版本,自己在Python官网http://www.python.org下载了IDLE ...
- [原] XAF How can I change XafDisplayNameAttribute dynamically
void ViewControlsCreated(object sender, EventArgs e) { foreach (StringPropertyEditor item in view.Ge ...
- java-API中的常用类,新特性之-泛型,高级For循环,可变参数
API中的常用类 System类System类包含一些有用的类字段和方法.它不能被实例化.属性和方法都是静态的. out,标准输出,默认打印在控制台上.通过和PrintStream打印流中的方法组合构 ...
- Python-变量
1.Python的变量是什么 变量是用来存储计算机程序中的信息,唯一的目的是将数据存储在内存中. 2.Python变量的组成 变量由字母.数字.下划线组成: 变量的第一位不能是数字,可以是字母或下划线 ...
- step by step设置postgresql用户密码并配置远程连接
设置pgsql默认用户posgres的密码 1.确认pgsql是开启的 /etc/init.d/postgresql status 2.使用默认用户登录 sudo su postgres 3.进入ps ...
- 3年的坚持,最终造就著作——《Learninghard C#学习笔记》
前言 起初开始写博文主要是记录学习过程中对学到内容的自我总结和理解,同时也希望本人的理解可以帮助到一些走在学习路上的朋友.但是令我没有想到的是,我总结的博文得到了广大园友的评论和支持,正是博友的支持, ...