博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
salesforce中几种自动化工具的总结
阅读量:28393 次
发布时间:2019-12-27

本文共 3788 字,大约阅读时间需要 12 分钟。

Workflow has been an admin’s friend for a long time. Workflows can:

  • Update a field
  • Send an email
  • Create a Task
  • Send an outbound message (communication with another system)

These can be initiated when a record is created, whenever it meets a certain condition, or whenever it is first set to meet a certain condition. The actions can be performed in any combination and can even have a time delay, rather than be performed immediately.

workflow触发条件:某一个记录被创建/编辑且满足某一标准,该标准指的是选定的对象或与选定的对象相关的某字段等于/不等于/大于...某一个值时触发;

局限:如果对象是lookup关系,仅能更新该选定对象的值,而不能更新与之相关字段的值,简而言之,不能跨对象更新,master-detail可以;
缺陷:workflow更新记录消耗CPU,所以当在代码中遇到CPU超限的问题时,可考虑将workflow的更新操作整合进apex code;
 

2、Process Builder的技术边界:(更新相关字段首选)

触发条件:某一记录被创建或再被创建;
缺陷:不能删除编辑好的Process,只能Inactive,不能修改已经编辑过的Process,只能clone,触发条件为created/edited;
相比workflow的优势:
a、流程图的方式写逻辑和action更直观;
b、执行action的时候,可以update选定对象的相关字段的值,而不仅局限其对象本身的field;
c、能跨对象更新,不管是跨父级还是跨子级更新都行。

注:任何更新字段实际上是通过DML操作实现的,不管操作是绑定在button上还是如何。

最佳实践:实施时请务必遵循一个对象一个Process Builder的原则。以下是Process Builder和NPSP应用程序代码之间相互影响造成的Exception Error,Support给的解决方案:
 

Process Builder is a newer tool for admins which is even more powerful. In addition to everything a workflow can do (except for sending outbound messages), you can:

  • Create a record (not just Tasks!)
  • Update related records
  • Launch a Quick Action
  • Post to Chatter
  • Launch a Flow
  • Call Apex code
  • Submit for approval
  • Invoke another process

Process Builder also extends upon the things that workflow does. For updating related records, Process Builder can update any field on any related record, where Workflow can only update some fields on a parent record of a Master-Detail relationship. Process Builder can also update multiple related records in a situation when all of a record’s child records need the same update.

Process Builder还扩展了工作流所做的事情。为了更新相关记录,Process Builder可以更新任何相关记录上的任何字段,其中Workflow仅可以更新主从关系的父记录上的某些字段。当一条记录的所有子记录都需要相同的更新时,Process Builder还可以更新多个相关记录。

Also, Process Builder finally gives admins the ability to set the exact order of operations, whereas with Workflow we had no control. No more complex workarounds to be able to ensure things happen in a certain order!

而且,Process Builder最终使管理员能够设置确切的操作顺序,而使用Workflow则无法控制。没有其他复杂的解决方法可以确保事情按一定顺序发生!

Since Process Builder also has the ability to configure multiple if-then conditions in one Process rather than separate Workflow rules, it helps new admins and admins who inherit orgs visualize the business processes with its sleek visual interface.

由于Process Builder还能够在一个Process中配置多个if-then条件,而不是单独的Workflow规则,因此它可以帮助新管理员和继承组织的管理员使用其流畅的可视化界面来可视化业务流程。

Process Builder has versions, so you can retain deactivated Processes. This can be very helpful if you realize something isn’t working and want to look back to what was happening before.

Process Builder具有版本,因此您可以保留已停用的Process。如果您发现某些问题不起作用并且想回顾一下之前发生的事情,这将非常有帮助。

 

 

是管理员可以使用的最强大的自动化工具。如果Salesforce自动化工具达到其局限性,您通常会寻求开发人员来实现Apex,但Flow的功能却相当强大。有了Flow,您可以…

  • 通过屏幕元素向用户显示数据(以向导样式的界面为例)
  • 通过创建分支和遍历数据集来控制逻辑。
  • 查找,创建,更新或删除Salesforce记录。

借助这些功能,Flow的工作方式与开发人员对Apex的编码方式非常相似,从而使您能够创建相似的功能。

 

Salesforce流可以通过两种方式实现:

  1. 屏幕流-Salesforce中的此流类型内部具有UI元素,并且需要与用户进行交互。这种类型的流不支持暂停元素。
  1. 自动启动流程-此流程类型不需要任何用户交互;当在插入,更新或删除记录时更改记录时,它可以自动启动。这种类型的流程不支持屏幕。

如果Process Builder和Flow Builder都是基于同一功能构建的,则有什么区别?可以公平地说,Process Builder故意是一种精简工具。它旨在作为一种更简单的工具来使用,针对最常见的用例,同时抛弃更复杂的功能。当Process Builder可以解决问题时,它将成为首选工具。

Process Builder非常线性-如果发生这种情况,请执行以下操作。尽管您可以使用多个条件和多个动作来创建相当复杂的流程,但是一切都是“要么”或“要么”。Process Builder的工作方式与IF在公式中的工作方式非常相似。TRUE时执行的动作;然后可能要评估条件为FALSE时要评估的其他条件。

流程中的逻辑与CASE公式更相似:如果A为TRUE则操作;否则为0。如果B为TRUE则执行操作,等等。如果什么都不是,则执行操作。就像在公式中嵌套一堆IF条件一样繁琐和令人困惑一样,您可以像使用CASE函数一样更轻松地在Flow中构建复杂条件。

不仅决策逻辑使Flows更加强大,而且 您可以采取更多行动。除了执行流程可以执行的所有动作外,流程还提供其他一些功能,包括。

最强大的功能之一是能够评估和更新或创建多个记录。虽然这是真的,进程生成器可以更新多条记录,这是仅限于能够更新子记录的一个启动进程和所有的人都需要进行更新,并都以同样的方式。使用Flows可以只更新符合条件的记录,甚至不需要与原始记录相关联

转载地址:http://zttdzu.baihongyu.com/

你可能感兴趣的文章
Go语言学习Part2:流程控制语句:for、if、else、switch 和 defer
查看>>
Go语言学习Part3:struct、slice和映射
查看>>
Go语言学习Part4-1:方法和接口
查看>>
Leetcode Go 《精选TOP面试题》20200628 69.x的平方根
查看>>
Leetcode C++ 剑指 Offer 09. 用两个栈实现队列
查看>>
Leetcode C++《每日一题》20200707 112. 路径总和
查看>>
云原生 第十一章 应用健康
查看>>
Leetcode C++ 《第202场周赛》
查看>>
云原生 第十二章 可观测性:监控与日志
查看>>
Leetcode C++ 《第203场周赛》
查看>>
云原生 第十三章 Kubernetes网络概念及策略控制
查看>>
《redis设计与实现》 第一部分:数据结构与对象 || 读书笔记
查看>>
《redis设计与实现》 第二部分(第9-11章):单机数据库的实现
查看>>
算法工程师 面经2019年5月
查看>>
搜索架构师 一面面经2019年6月
查看>>
稻草人手记
查看>>
第一次kaggle比赛 回顾篇
查看>>
leetcode 50. Pow(x, n)
查看>>
leetcode 130. Surrounded Regions
查看>>
【托业】【全真题库】TEST2-语法题
查看>>