PS中的Workflow的创建

PS中人工工作流有两种:Workflow,AWE,前面是老的,AWE是新的,至于哪个版本有了AWE我也没具体去查看。我现在接触的项目中考勤模块是由AWE负责,培训模块是走的老的Workflow。下面就看下老的Workflow中:

其实系统中的工作流主要涉及两件事:其一就是发送worklist给相应的人,其二就是发送邮件提醒相应的人。

下面就介绍下如何发送Worklist和Email:

一.  发送Email

      使用工作流发送Email首先需要创建Business Process,Activity,Event,Routing构建一个简单的发送Email流程,这个创建起来很简单这里就不介绍了,这里我就说下我自己在做的过程中遇到的一些注意点。

    1. 发送Email使用的函数是:TriggerBusinessEvent,我们需要把这个事件写到一个Record的Field的Workflow事件中,包含这个Field的activity关联Page当发生任何修改时就会触发Workflow中的PeopleCode,注意只要是activity关联页面中的任何一个Field做修改当保存时就会触发。

   2. TriggerBusinessEvent函数中参数的问题:TriggerBusinessEvent函数中的BusActivity内容是区分大小写的,例如:

        TriggerBusinessEvent(BusProcess."GHAC_TEST_BP",BusActivity."GHAC_TEST", BusEvent."Result Email"),如果将GHAC_TEST写成小写ghac_test就会报错,BusProcess 的内容改成小写不会报下面错误,BusEvent也必须跟定义的事件的名字大小写一样。错误如下:

   3. Email Routing中的TO

       发送邮件的接收人要赋值给TO,其中TO的值可以是:Email地址,角色ID,角色名字(Role Name),系统会自动将它们转化成Email地址。

      发送邮件的内容赋值给NOTETEXT,NOTETEXT可以有多个,显示时按照NOTETEXT的顺序显示。

 

二. Worklist的发送

   首先就是Worklist Record的创建,下面是创建Worklist Record必须包含的Field,这6个field系统会自动给它们赋值,它们存储在系统自己定义的表PSWORKLIST中,在worklist record中必须是ascending key,然后我们添加一些具体关于这个事物的field(必须包括这个页面search Record中所以的Key这样才能定位到具体的其中一条数据),剩下的就得我们自己在worklist的field Mapping里面给它们关联到相应的字段了。这里还包含一个例子:

然后给它们赋值

 

上面的OPRID就是要发送WORKLIST Item给谁的用户,在赋值时必须给它赋值。

注:如果使用的Virtual Approver时必须添加一个非key的APPR_INSTANCE字段

 

 当发送Worklist Item成功后就会在工作列表中查看到,按照工作列表筛选条件就可以看到我们定义的Worklist的名字。

posted @ 2013-05-21 15:00  喜来乐  阅读(279)  评论(0)    收藏  举报