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的名字。

浙公网安备 33010602011771号