接觸SourceCode公司的工作流產品K2.NET 2003有一段時間了,想把一些心得分享出來,和各位共同探討一下,拋磚引玉,希望能對相關人士以啟發。 K2.Net 2003是基於微軟.Net Framework技術框架之上的工作流平臺,能夠實現企事業內部人與人、人與部門、以及人與系統間的流程自動 ...
接觸SourceCode公司的工作流產品K2.NET 2003有一段時間了,想把一些心得分享出來,和各位共同探討一下,拋磚引玉,希望能對相關人士以啟發。
K2.Net 2003是基於微軟.Net Framework技術框架之上的工作流平臺,能夠實現企事業內部人與人、人與部門、以及人與系統間的流程自動化。K2.Net 2003主要包含5個組件:
1. K2.Net Studio
這是K2.Net產品的一個核心組件,是一個圖形化的流程建模環境。在這個環境下,所有的流程對象(包括Activity、Event和Line)都可以
進行拖放操作。非常有意義的是,用K2.Net Studio設計流程時,開發人員的感覺會非常熟悉。因為K2.Net
Studio組織流程的思路非常類似Visual Studio
.Net,開發人員需要做的第一步是先建立解決方案(Solution),然後是項目(Project,C#或者VB.Net),然後再建立流程。項目中
的公共類代碼可以放在模塊(Code Modules)中。K2.Net
Studio中,流程圖的每一個節點都被稱為一個Activity,代表具體的活動類型;而每一個流程節點多可以執行多個Event,這些Event事實
上是預先設計好的執行一個特定操作的嚮導式模版,而且這裡的Event還可以進行擴充,K2提供了Event的SDK,開發人員可以根據需要設計自己的
Event,如與SAP和Oracle進
行交互的Event。目前K2的這個版本中,提供了Microsoft Exchange,,Microsoft Office,Microsoft
InfoPath,Microsoft SharePoint
Portal Server 2003,Microsoft Content Management Server 和 Microsoft
BizTalk Server等模版。為了搭配設計流程圖時的複雜路線,K2.Net
Studio同時也提供了各種形狀的Line,用以連接各個Activity。
2. K2.Net Service Manager
K2.Net Service Manager是流程系統管理員管理K2.Net伺服器環境、流程解決方案及流程的組件。K2.Net Service Manager是Microsoft Management Console的一個Snap-in,為系統管理員提供了一個熟悉的管理界面。利用K2.Net Service Manager,系統管理員可以註冊/註銷K2伺服器、定義伺服器屬性(如Socket埠,資料庫設置以及License信息)、停止/啟動伺服器、管 理流程版本、流程線程,以及管理流程授權用戶/用戶組。K2.Net Service Manager提供的另外一個非常有益的功能是可以查看並修複流程Run-time錯誤,這可以成為調試K2流程的一種方法。
K2.Net WorkSpace是K2為知識工作者(一般用戶)提供的流程管理界面,這是一個動態的XML ASP.Net構建用戶界面,用戶可以在這裡執行任務,查看任務報表,生成報告圖表,等等。
4. K2.Net Server
K2.Net Server是K2流程解決方案的核心,即流程引擎。K2.Net
Server支持.Net運行時,因此可以支持任何行業標準工具如Visual Studio .Net設計的業務邏輯對象和圖形用戶界面。K2.Net
Server使用SQL Server 2000作為存儲數據。K2.Net 2003數據倉庫在一個資料庫中
同時保存流程定義和流程業務數據,這個資料庫稱為Transaction資料庫。當流程設計完畢並且導出到伺服器上時,流程定義就被寫進這個資料庫。流程
執行時,K2.Net Server就從這個資料庫中讀取流程定義。這個資料庫同時保存了流程執行過程忠收集到的用戶或者系統信息。K2.Net
Server的另外一個資料庫叫做Log資料庫,這個資料庫自動保存可以歸檔的流程線程。
5. K2.Net SmartForms
安裝K2時,K2會自動擴展Visual Studio .Net,將一個稱之為K2 SmartForm的組件添加到Visual Studio
.Net的新項類型中。K2 SmartForm事實上是對Visual
Studio的Web窗體的擴充,它將常用的各種Web窗體控制項進行了重新封裝,比如
TextBox,Label,DataGrid,DropDownList等。重新封裝後的控制項名稱首碼都為K2,如
K2TextBox,K2Label,K2DataGrid,K2DropDownList等等。這樣做的目的為了便於開發人員設計K2流程所用的Web
窗體,實現不需要寫代碼即可在流程數據和Web窗體控制項間進行數據綁定。
轉自原創:http://www.cnblogs.com/dwang/archive/2005/07/31/204237.html