在Salesforce中创建Approval Process

在Salesforce中可以创建Approval Process来实现审批流程的功能,实际功能与我们常说的Workflow很相似,具体的设置步骤如下所示

1):选择对应的Object去创建对应的Approval Process

 

2):点击下图中的Create New Approval Process 按钮

 

3):这里可以选择对应的创建显示方式,如下图所示,我们选择的是Jump Start Wizard

 

4):填写基本的信息,这里的Specify Entry Criteria表示的是此Approval Process在什么条件下才能够被触发,如果不满足条件,即使用户去submit request此Approval Process也不会被触发。

 

5):另外的一个重要的部分是Select Approver,当然了如下图所示可以选择 手动指定,自动指定给User的Manager Line,顺序自动指定,自动指定单人或多人

 

6):接上图,填写基本的Approver信息

 

7):填写好了基本的信息之后,点击Save,会给出如下提示,表明我们创建的Approval Process默认状态是inactive的,需要手动的去激活才能生效

 

8):之后又给出了一些解释性的信息

 

9):创建完之后我们可以在Approval Steps看到具体的信息,默认的Step名字叫做Step1

 

10):点击Step1前面的Show Actions,会让我们为Approval和Rejec动作设置具体的Action

 

11):如下图我们选择Field Update的Action

 

12):接上图

 

13):创建Rejection的Action

 

14):之后创建此Object的一个实例,在PageLayout中设置对应的RelatedList后,进入View页面我们发现了Approval History的部分

 

15):点击上图中的Submit for Approval,表示提交了Request,若条件满足则会触发对应的Approval Process。并且触发Submit for Approval的动作不能进行简单的条件设置,只能通过手动点击后者写后台Apex代码来实现。此时我们是要去手动设置一下来激活Approval Process的状态的,如下图所示

15.1):激活状态

 

15.2):Apex代码来Submit for Approval

            // Create an approval request for the EricSunObj__c
            Approval.ProcessSubmitRequest req1 = new Approval.ProcessSubmitRequest();
            req1.setObjectId(esObj.id);
                
            // Submit the approval request for the EricSunObj__c
            Approval.ProcessResult result = Approval.process(req1);

 

16):成功触发几次之后,如下所示

 

17):Approval History 对应到具体Object 的 Child Relationships 中的 ProcessInstance 和 ProcessInstanceHistory

 

18):ProcessInstance 和 ProcessInstanceHistory 也是具体的Object 在数据库中可以找到,如下图所示

 

OK,演示结束。

。。。。

posted @ 2014-06-04 16:21  Eric Sun  阅读(3707)  评论(0编辑  收藏  举报