说起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,其中有几点需要注意:

  1. 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介绍及用法的更多相关文章

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

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

  2. salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见

    项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随 ...

  3. salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件

    在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...

  4. salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值

    注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-fr ...

  5. salesforce零基础学习(八十五)streaming api 简单使用(接近实时获取你需要跟踪的数据的更新消息状态)

    Streaming API参考链接: https://trailhead.salesforce.com/en/modules/api_basics/units/api_basics_streaming ...

  6. salesforce零基础学习(八十六)Ajax Toolkit (VF页面中使用及javascript action使用)

    Ajax Toolkit 参考文档:https://resources.docs.salesforce.com/212/latest/en-us/sfdc/pdf/apex_ajax.pdf 在项目中 ...

  7. salesforce零基础学习(八十八)项目中的零碎知识点小总结(二)

    通过做项目以及群里面的一些大神的聊天,总结一下关于项目中的两个知识点,以后当做参考. 一. 在custom setting中配置集成接口信息后刷sandbox的问题 我们做项目时,经常会遇见和其他平台 ...

  8. salesforce零基础学习(八十四)配置篇: 自定义你的home page layout

    当我们进入salesforce系统或者切换app后,默认第一个看到的就是home页面.home页面简单的来说可以包括左侧(narrow component)和右侧(wide component)两部分 ...

  9. salesforce零基础学习(八十一)更改标准字段的label名称(Admin)

    我们在开发中往往需要考虑国际化功能,salesforce 提供了国际化功能,在search部分搜索translate,便可以找到translate部分,从而对需要的进行translate.比如pick ...

  10. salesforce零基础学习(八十三)analytics:reportChart实现Dashboard(仪表盘)功能效果

    项目中经常会用到Report以及Dashboard来分析汇总数据,Dashboard可以指定view as user,如果针对不同的用户需要显示其允许查看的数据,比如  根据role hierarch ...

随机推荐

  1. C++中未初始化的bool值的问题

    原创文件,欢迎阅读,禁止转载. 问题描述 你见过一个这样的bool值吗,判断 var 和 !var 都是成立的,今天被我遇到了,是在一个坑里遇到的.今天调试了一个程序,发送一个网络消息,结果总是得不到 ...

  2. Win7 64位 MinGW环境测试SDL2.0.3

    下载MinGW版的文件 http://www.libsdl.org/release/SDL2-devel-2.0.3-mingw.tar.gz 解压放到mysys下面 运行Makefile mysys ...

  3. linux下的5个查找命令

    在Linux中,有很多方法可以做到这一点.国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条.大多数程序员,可能经常使用其中的2到3条,对这5条命令都很熟悉的人应该是不多的. 1. f ...

  4. Inno setup中定制安装路径

    我的程序修改了安装界面,所以我的界面中提供了更改安装路径的方法. 用户修改后的路径会被传回inno setup脚本,脚本中需要做的事情如下: 1,写一个函数,来返回新的安装路径,如: function ...

  5. ListView之头部浮动效果

    ListView 中有时需要在顶部固定一个浮动栏,当向上滑动 ListView 时,浮动栏固定在顶部,当向下滑动 ListView 到其 HeaderView 可见时,浮动栏成为ListView的一部 ...

  6. C# 直接调用vs 委托vs动态调用vs动态类型vs反射,最佳性能测试

    懒得解释,自己看代码 测试结果: Direct call:00:00:00.0742191Delegate Direct:00:00:00.0687487Method Factory(IL):00:0 ...

  7. AngularJs 时间控件

    <div class="form-group col-sm-4 clearfix"> <label class="col-sm-5 control-la ...

  8. .net之微信企业号开发(一) 所使用的环境与工具以及准备工作

    前言 一直以来,从事的是.net winform的编程,虽然对移动互联这块很感兴趣,但是由于现有的工作和移动互联之间隔的太远,也就没有时间和精力好好的去研究和实现.今年年初辞职了,刚好朋友那里希望建立 ...

  9. 【图像处理】第三次实验:JPEG图像压缩

    1.任务说明 将LENA图像用JPEG方式压缩. 2.算法原理 JPEG(Joint Photographic Experts Group)是一个由ISO和IEC两个组织机构联合组成的一个专家组,负责 ...

  10. Objective-C 关联

    在项目开发中,经常会使用到关联,就是将两个实例对象绑定,使得其中一个实例对象成为另一个实例对象的一部分.关联特性在mac os 10.6 及ios 3.1以上才可以使用. 关联的使用是基于关键字来实现 ...