转:http://blog.csdn.net/gxiangzi/article/details/8444060

郁闷,今天K2的license过期了,很多东西都没法用了,还得去找PM大大帮忙申请一个。

简单说一下K2 blackpearl的开发步骤,前提条件是K2已经安装好,而且K2 workspace打开顺利。

1.首先我们要新建一个解决方案,名称呐就叫K2Project好了,然后添加两个项目,一个是web项目叫K2Web,另一个呢是K2WorkflowProject 叫K2Workflow  专门用作我们画流程用的。弄完以后应该是下面这样的:

2.因为K2Workflow的表单有两种,FormsGenerationClientEvent和DefaultClientEvent,实验了一下,第一种呢应该是类似于傻瓜式表单的那种,基于Sharepoint的,配置好之后表单完全不用你自己写。第二种是我们自己做表单,然后配置表单的URL。第二种是很灵活的,而且也是我们最常用的,因为流程肯定要做一些定制化处理比如修饰页面啊、加一些业务逻辑啦,所以我想介绍第二种,第一种自己尝试吧。

3.使用自定义表单需要将自己的web项目首先部署到IIS,所以我们先将K2Web部署到IIS,而且将K2Web设置为windows登录。然后打开k2 workspace,设置一下我们web站点地址的参数值,后面开发流程设置表单URL时候使用,具体见下图:

4.下面我们开始流程开发第一大步骤,画流程咯!先弄个最简单的流程,就请假流程吧,表单 三个参数,分别是请家人、请假天数、请假原因,然后一个 经理审批 就结束好了。

4.1 在K2Workflow上点右键,新建一个Process,名字就叫LeaveProcess。

4.2 在打开的设计器上已经自动生成了 Start 活动,然后我们打开工具箱,拖几个Default Activity,然后往这几个Activity上 都对应的拖拽一个DefaultClientEvent,这时候会弹出向导框,下面这几张图片简单介绍下里面的内容。

4.3  下面暂停一下,说一下K2里面每个表单都会有的Action、Outcome和Line

Actions代表的是人与工作流交互的时候,对流程处理的意见(例如同意/不同意/驳回等等),K2的Action还可以进行权限控制。

Outcomes是Action的自然扩展,决定了流程的走向,可以设定业务规则,比如说至少2个人同意还是所有人都同意等等。大多数情况下ACTIONS 和OUTCOMES之间是一对一的关系。也存在不是一对一关系的时候,这种情况出现在并发流程上。K2的OUTCOMES只要有一个满足条件,其他的OUTCOME就不会被激活了。针对K2流程的并发流程上的条件通过K2的另一个重要概念Line rule来解决,也就是在Line
Rule进行条件的设置。

这三个是K2很重要的概念,具体请看http://www.k2underground.com/blogs/blackpointtipsandtricks/archive/2009/03/18/actions-outcomes-and-line-rules.aspx

4.4  贴图说一下LeaveProcess的Action、Outcome配置。

4.5  流程表单的配置基本是就是这样,当然里面还有很多细节东西,请大家仔细研究。下面配置下每个活动的 审批人,活动的审批人可以设置为系统内置的角色或者指定的人或者在代码中自己定义人,方便起见我先在k2 workspace的user manage中添加了两个组Dev和PM,拉了几个人进去,Dev发起,PM审批。活动配置如下:

5.以上就是流程图的配置,虽然写了不少,但是远远没有说详细,要讲的东西实在太多了,具体还请大家自行摸索或查询资料,还有请大家按照步骤把其它活动结点配置完全。总之,最后的流程图看起来应该是下面的样子:

6.流程的发布。发布之前确保Visual Studio 2008 Web Deployment Projects已安装,而且K2服务已经开启。点击流程设计器右上角Depoly弹出发布对话框,配置无错误的话控制台会输出 部署成功。

K2 blackpearl 流程开发(一)的更多相关文章

  1. K2 blackpearl 流程开发(二)

    转:http://blog.csdn.net/gxiangzi/article/details/8444590 本来想一篇文章把流程开发介绍完的,后来发现实在是太多了,只好分成两部分了.上一篇很简单的 ...

  2. 使用C#代码审批/转签K2 Blackpearl流程

    转:http://www.cnblogs.com/dannyli/archive/2011/08/02/2125302.html 以下是使用代码审批.转签k2 blackpearl流程,初探K2 Bl ...

  3. 部署K2 Blackpearl流程时出错(由于目标计算机积极拒绝,无法连接)

    转:http://www.cnblogs.com/dannyli/archive/2011/12/01/2270118.html 亲,如果你也遇到过这个问题,就请继续往下看哦 在部署K2 Blackp ...

  4. 使用C#代码发起K2 Blackpearl流程

    转:http://www.cnblogs.com/dannyli/archive/2011/08/02/2125285.html 使用C#代码,发起一个K2的流程,其形式和链接SQL Server数据 ...

  5. 部署K2 Blackpearl流程时出错(与基础事务管理器的通信失败或Communication with the underlying transaction manager has failed.

    转:http://www.cnblogs.com/dannyli/archive/2011/12/01/2270222.html 亲,在部署K2流程是,是否遇到这个错误(以下是中.英文错误信息) 中文 ...

  6. K2 Blackpearl开发技术要点(Part2)

    转:http://www.cnblogs.com/dannyli/archive/2012/09/14/2685282.html K2 Blackpearl开发技术要点(Part2)  

  7. K2 Blackpearl开发技术要点(Part1)

    转:http://www.cnblogs.com/dannyli/archive/2012/09/14/2685260.html K2 Blackpearl开发技术要点(Part1) 预知后事如何,请 ...

  8. K2 blackpearl 安装

    转:http://blog.csdn.net/gxiangzi/article/details/8432188 K2是国外的一款BPM引擎,基于MS的Workflow,关于它的详细介绍在我之前一片博客 ...

  9. K2 Blackpearl 4.6.8 安装步骤详解

    由于某些原因,我幼小的心灵受到了很大的创伤,倍感世态之炎凉,久久不能愈合,也因此很久没再接触K2 Blackpearl了.偶然来了兴趣,想整个K2的环境,闲暇之余了解其新功能,温故知新,也希望从中能讨 ...

随机推荐

  1. NET Framework 4 中的新 C# 功能

    http://msdn.microsoft.com/zh-cn/magazine/ff796223.aspx C# 编程语言自 2002 年初次发布以来已经有了极大的改善,可以帮助程序员编写更清晰易懂 ...

  2. Linq查询Count、Sum、Min、Max、Average

    原文地址:Linq——Count.Sum.Min.Max.Average作者:mousekitty Linq查询之Count.Sum.Min.Max.Average using System; usi ...

  3. POJ 3292

    Semi-prime H-numbers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7059   Accepted: 3 ...

  4. 0到N数其中三个数的全排列

    #include<iostream> using namespace std; int main(){ ; int count; count=; ;i<=N;i++) ;j<= ...

  5. 无废话版本-Asp.net MVC4.0 Rasor的基本用法

    最近工作有点忙,好久没写东西了!废话不多说了,进入主题! 1.在页面中输出单一变量时候,只要在C#语句之前加上@符号即可,For example: <p>Now Time:@DateTim ...

  6. 玩转图片Base64编码

    什么是 base64 编码? 图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址. 这样做有什么意义呢?我们知道,我们所看到的网页上的每一个图片,都是需要消耗一 ...

  7. 用 EasyBCD 在 Win7/8 中硬盘安装 Ubuntu

    写在前面: 1. 我装的是ubuntu 13.10 64位,不一样的地方是,从casper文件夹复制出来的文件不是vmlinuz,而是vmlinuz.efi,相应的,menu.lst里也要将vmlin ...

  8. Exception in thread "AWT-EventQueue-0" java.lang.IllegalThreadStateException

    在线程中出现这种错误的原因是多次启动start() 解决方法: 将start()改成 run()

  9. lintcode 中等题:A + B Problem A + B 问题

    题目: 中等 A + B 问题 给出两个整数a和b, 求他们的和, 但不能使用 + 等数学运算符. 如果 a=1 并且 b=2,返回3 注意 你不需要从输入流读入数据,只需要根据aplusb的两个参数 ...

  10. STL函数模板(即算法)一览

    查找算法 adjacent_find:找出一个串中第一个不符合次序的地方 find,find_if:找出第一个符合条件的元素 find_first_of:在一个串中寻找第一个与另一个串中任意一个元素相 ...