QuickFlowDesigner是QuickFlow的无代码设计器,拥有了QuickFlowDesigner之后,QuickFlow整体解决方案已经涵盖了基于VS2008的开发和基于QuickFlowDesigner的无代码工作流定义。
VS2008+QuickFlow适合复杂的流程,需要写大量逻辑代码的情况。
QuickFlowDesigner适合于代码逻辑比较简单的场景,VS2008+QuickFlow和QuickFlowDesigner都可以自定义审批页面。
下面我们看一个简单流程如何用QuickFlowDesigner来实现。
流程图:
这个是一个单步审批可以退回的流程,SPD天然的不支持退回使这类流程的定制很是痛苦,我们看看看如何用QuickFlowDesigner来快速的实现。
Step1)首先建立一个自定义列表,名字叫“信息资源申请”,添加两个栏:申请内容,申请理由,如下:
Step2)打开QuickFlowDesigner,设计流程
将start1的名称改为“开始”,拖拽一个Task活动到设计器,名称改为“经理审批”,设置User属性为审批人账号,如下图
在“经理审批”的TaskActions集合中添加两个审批动作:同意,退回,如下图:
拖拽OutcomeDecision活动到设计器,从“经理审批”画一根线连到OutcomeDecision,然后设置OutcomeDecision的Compared属性为“同意”
拖拽一个Task到设计器,改名为“退回提交人”,将“退回提交人”的User属性绑定到工作流的Originator字段。
拖拽一个End到设计器,改名为“结束”,分别将OutcomeDecision的F(条件为假)和T(条件为真)两端连线到“退回提交人”和“结束”两个活动,从“退回提交人”连一根线到“经理审批”,如下:
Step3)发布流程
通过File菜单中的Publish to SharePoint或按Ctl+P键,发布流程。
输入站点URL,点击Open加载列表,选择工作流附加的列表为“信息资源申请”,选择一个任务列表,输入工作流名称,选择启动模式为自动启动,如下图:
注:实际测试的时候最好也选中Manual,这样既能在添加列表项后自动启动也能手工启动流程。
下面我们就可以来测试了。
新建
工作流启动了
注:因为选择了自动启动(Auto),所以不用在流程页面手工启动流程,流程自动启动了。
如果只选择了Auto,那么在流程启动页面是看不到这个流程的,必须选择Manual,才能在流程启动页面看到这个流程
默认审批界面
退回后重新提交
注意:
1)因为SharePoint的bug,如果选择流程启动方式为Auto, 启动流程的用户请不要用系统账号,否则流程不能触发, 安装MOSS SP2后这个bug解决。
2)设计流程时,先改活动名字再划线,改了活动名字后,相关联的线需要重新画[最新版本已无此限制]。
3)将系统默认的“用户任务”WebPart添加到网站首页,每个用户即可看到自己的任务
4)部署后,若出现页面错误,确保能显示详细错误信息:http://www.cnblogs.com/zhaom/archive/2011/01/05/1926109.html
QuickFlow和QuickFlowDesigner可以到以下地址下载:
后继文章:
2)QuickFlowDesigner自定义简单流程页面
3)QuickFlowDesigner UI代码和工作流交互
4)QuickFlowDesigner之规则引擎