1. 程式人生 > >Lemon OA系統:一、流程定義

Lemon OA系統:一、流程定義

吐槽下CSDN 的下面這種版面就像一坨屎一樣!!!!!!

記錄學習Lemon OA 開源專案的過程:

下載最新的1.7.0版本的開源專案,地址是http://www.mossle.com/lemon.do,解壓後執行startup.bat,啟動服務,然後輸入http://localhost:8080登入到頁面上,登入帳號為:lingo 密碼為:1,登入平臺。

然後直接進入主題:釋出一個請假的流程,這個過程涉及到 新增表單、釋出流程模型、流程配置 等幾個功能, 1.首先新增一個請假表單: 點選系統配置-流程管理-表單管理 -新建 新疆表單主要設定操作、表單、屬性 這三個,其中表單是設定頁面表單的各項屬性,屬性是設定這整個表單的名稱和他唯一的標識,這個唯一標識在設定流程模型中的表單鍵值或者是流程配置中配置表單時使用。

然後點選save,這樣表單就配置好了。(其中比如整合和分割操作,把某幾個列連在一起點選即可,剩餘的大家自己摸索下) 2.新增表單模型:系統配置-流程管理-釋出流程-新增模型
這個新建的是一個流程模型,這個流程模型可以多次修改,並且可以進行釋出和刪除。體後話:釋出後的流程模型和流程配在一起就可以讓使用者使用了 然後進入最重要的流程模型,流程最終的執行是根據這個流程模型走的: 如下就是一個請假的流程模型: :可以在任務分配中新增指定任務處理人和表單: assignee中可以使用系統預設的配置,如 常用語:流程發起人 、 常用語:直接上級、或者直接填寫使用者的編號  編號即對著對應的處理人。
這個表單鍵值對應表單的標識。 寫好流程之後,點空白處可以看到下側有名稱和流程作者,這兩個輸入框,名稱對應的是該模型釋出後的名稱。 完成以上操作之後點選儲存,完成以上操作之後點選這個模組右側的釋出,會將這個模型釋出出去,可以在流程定義出看到自己釋出的流程。 現在離流程釋出就只差最後的一步。 3.流程配置:系統配置-流程管理-分類管理-流程配置-新建,新建一個流程,這個流程就是最後釋出的流程。 繫結流程是將剛才咱們釋出的流程模型繫結到這裡。排序是顯示的排序。然後點選儲存。儲存好了之後點選右側的配置進入配置介面:

可以看到我們在流程模型中配置的這裡都顯示出來了。 比如人員介面和表單介面中可以看到我們設定的人員,注意新增表單時新增的是表單的標識號

還可以新增提醒和操作。 這時回到首頁就可以看到剛才繫結的流程已經可以顯示了。
然後小夥伴們就可以開始測試了。先到這裡,我也有許多不懂的地方需要繼續看。 繼續前進! 補充點東西,關於閘道器的介紹: 1.排他閘道器:

排他閘道器(也叫異或(XOR)閘道器,或更技術性的叫法 基於資料的排他閘道器), 用來在流程中實現決策。 當流程執行到這個閘道器,所有外出順序流都會被處理一遍。 其中條件解析為true的順序流(或者沒有設定條件,概念上在順序流上定義了一個'true') 會被選中,讓流程繼續執行。

注意這裡的外出順序流 與 BPMN 2.0 通常的概念是不同的。通常情況下,所有條件結果> 為true的順序流 都會被選中,以並行方式執行,但排他閘道器只會選擇一條順序流執行。就是說,雖然多個順序流的條件結果為true, 那麼XML中的第一個順序流(也只有這一條)會被選中,並用來繼續執行流程。 如果沒有選中任何順序流,會丟擲一個異常。

如果有多條外出流,會類似與if elseif的判斷,每個外出流上都需要新增一個判斷條件。

2.並行閘道器


閘道器也可以表示流程中的併發情況。最簡單的併發閘道器是 並行閘道器,它允許將流程分成多條分支,也可以把多條分支 匯聚到一起。並行閘道器的功能是基於進入和外出的順序流的:

  • 分支: 並行後的所有外出順序流,為每個順序流都建立一個併發分支。
  • 匯聚: 所有到達並行閘道器,在此等待的進入分支, 直到所有進入順序流的分支都到達以後, 流程就會通過匯聚閘道器。

注意,如果同一個並行閘道器有多個進入和多個外出順序流, 它就同時具有分支和匯聚功能。這時,閘道器會先匯聚所有進入的順序流,然後再切分成多個並行分支。

與其他閘道器的主要區別是,並行閘道器不會解析條件。 即使順序流中定義了條件,也會被忽略。

這裡需要強調的是, 並行閘道器一定是成對出現的,有分支也要有匯聚,一個分支執行完畢後,需要等待其他分支全部執行完流程才會走到下一個節點。還有一個有意思的點是,流程開始執行後,點選流程監控發現,執行到並行閘道器中間的節點時,當前執行節點是顯示在並行閘道器節點上,並不會顯示到中間具體的一個節點,所以activiti是把兩個並行節點間的所有任務節點,看作是一個事務。

3.包含閘道器


描述

包含閘道器可以看做是排他閘道器和並行閘道器的結合體。 和排他閘道器一樣,你可以在外出順序流上定義條件,包含

閘道器會解析它們。 但是主要的區別是包含閘道器可以選擇多於一條順序流,這和並行閘道器一樣。 包含閘道器的功能

是基於進入和外出順序流的:

  • 分支: 所有外出順序流的條件都會被解析,結果為true的順序流會以並行方式繼續執行, 會為每個順序流

  • 建立一個分支。

  • 匯聚: 所有並行分支到達包含閘道器,會進入等待章臺, 直到每個包含流程token的進入順序流的分支都到

  • 達。 這是與並行閘道器的最大不同。換句話說,包含閘道器只會等待被選中執行了的進入順序流。 在匯聚之

  • 後,流程會穿過包含閘道器繼續執行。

注意,如果同一個包含節點擁有多個進入和外出順序流, 它就會同時含有分支和匯聚功能。 這時,閘道器會先匯

聚所有擁有流程token的進入順序流, 再根據條件判斷結果為true的外出順序流,為它們生成多條並行分支。 

4.基於事件的閘道器:


沒體會,我再瞭解瞭解
來自 http://m.blog.csdn.net/article/details?id=52297403