workflow工作流(四) 流程例項,任務的執行

2021-09-10 01:48:14 字數 1912 閱讀 2820

用eclipse畫流程圖

將流程圖複製到src\main\resources\processes路徑下就是部署成功,前提是springboot專案,現在應該都用這個,啟動專案時會在在這個表中

processinstance pi = runtimeservice

.startprocessinstancebykey("helloworld", map);

可以用id啟動,也能用key啟動,key有好處,每次都是最新版本流程啟動,啟動的時候帶上map,裝著流程變數,就是整個流程可能用到的變數和值

對應下面這個key值,在

注意:當流程定義的

key相同的情況下,使用的是版本公升級

運算元據庫的act_ru_execution表,如果是使用者任務節點,同時也會在

act_ru_task

新增一條記錄

activityid是當前活動id,就當前執行物件執行到了**

流程例項歷史表:乙個流程,流程例項只有乙個,但執行物件可以存在多個(如果存在分支和聚合)

/**查詢當前人的個人任務

*/ @test

publicvoidfindmypersonaltask()

} }說明:

因為是任務查詢,所以從processengine中應該得到taskservice

使用taskservice獲取到任務查詢物件taskquery

為查詢物件新增查詢過濾條件,使用taskassignee指定任務的辦理者(即查詢指定使用者的代辦任務),同時可以新增分頁排序等過濾條件

呼叫list方法執行查詢,返回辦理者為指定使用者的任務列表

任務id、名稱、辦理人、建立時間可以從act_ru_task表中查到。

execution與processinstance見5.6和5.7章節的介紹。在這種情況下,processinstance相當於execution

如果assignee屬性為部門經理,結果為空。因為現在流程只到了」填寫請假申請」階段,後面的任務還沒有執行,即在資料庫中沒有部門經理可以辦理的任務,所以查詢不到。

乙個task節點和execution節點是1對1的情況,在n個task物件中使用execution_來表示他們之間的關係,n個task中executionid是一樣的

任務id在資料庫表act_ru_task中對應「id_」列

只有節點是usertask的時候,act_ru_task才會存在資料

附加:在activiti任務中,主要分為兩大類查詢任務(個人任務和組任務):

確切指定了辦理者的任務,這個任務將成為指定者的私有任務,即個人任務。

無法指定具體的某乙個人來辦理的任務,可以把任務分配給幾個人或者一到    多個小組,讓這個範圍內的使用者可以選擇性(如有空餘時間時)來辦理這類任務,即組任務。

先知道個人任務的查詢和辦理,組任務的操作後面講

說明:是辦理任務,所以從processengine得到的是taskservice。

當執行完這段**,再以員工的身份去執行查詢的時候,會發現這個時候已經沒有資料了,因為正在執行的任務中沒有資料。

對於執行完的任務,activiti將從act_ru_task表中刪除該任務,下乙個任務會被插入進來。

以」部門經理」的身份進行查詢,可以查到結果。因為流程執行到部門經理審批這個節點了。

再執行辦理任務**,執行完以後以」部門經理」身份進行查詢,沒有結果。

重複第3和4步直到流程執行完。

工作流 workflow 介紹

工作流 工作流程的定義 www.jiedichina.com,南京捷帝科技 工作流就是 在乙個工作群組中,為了達成某乙個共同目的而需要多人協力以循序或平行工作的形式來共同完成的任務 關於工作流的幾個名詞解釋 任務 泛指各種事務上所必需執行的流程性工作 循序或平行工作 工作的流動性是乙個人接著乙個人執...

workflow工作流型別及其區別

在workflow中,工作流分為兩種型別,順序工作流 sequential 和狀態機工作流 state machine 順序工作流將一系列要執行的步驟以一種預先設計好的流程順序執行。在這種工作流裡,控制流程的是我們很熟悉的如if else和while迴圈結構。順序工作流的行為可以用簡單的流程圖來演示...

工作流 Workflow 和BPM的區別

區分workflow與bpm 按照我最初的設想,這篇文章本不應該寫workflow與bpm的區別的,但是世界總是變化這麼快。前幾天給公司內部的期刊寫了篇介紹工作流的文章,之後就有很多同事詢問workflow與bpm的區分問題。於是不得已就寫了點這方面自己的看法,現摘錄如下 對workflow和bpm...