工作流控制臺Activiti Explorer使用指南!使用Activiti Explorer定義部署執行工作流

      網友投稿 1464 2025-04-01

      Activiti Explorer簡介


      Activiti Explorer: Activiti控制臺,是一個web應用程序

      從Activiti的官方網站下載Activiti的壓縮zip文件時,Activiti控制臺在 ${Activiti_home}/wars文件夾下面

      該控制臺的目的并不是創建一個完善的web應用程序,僅僅是為客戶端用戶準備的應用程序.對于該控制臺,使用了一個內存數據庫,也可以換成自定義的數據庫(查看WEB-INF文件夾下面的applicationContext.xml文件)

      登錄控制臺,有四個主要功能模塊:

      Tasks: 任務管理功能

      如果是任務執行人,可以看見運行中流程實例的待辦任務,也可以拾取組任務

      控制臺涉及的功能有子任務的工作,不同角色的人…

      控制臺允許創建一個獨立的任務,該任務不需要關聯任何流程實例

      Processes: 顯示部署的流程定義列表,并且可以啟動一個新的流程實例

      Reports: 生成報表和顯示之前保存歷史的結果數據

      Manage: 用于管理Activiti的流程引擎

      管理用戶和組

      執行和查看停止的jobs

      查看數據庫和部署新的流程定義

      登錄的用戶具有超級管理員權限才會顯示

      流程圖

      控制臺包含的功能,使用Rapha?ljavaScript框架自動生成一張流程圖:

      當流程定義XML包含的BPMN注入信息時,該流程圖才能夠生成

      當流程定義XML中并沒有BPMN注入信息,但是部署的時候包含一張流程圖,那么該圖片也將會被顯示

      如果不想使用javaScript生成流程圖,可以在ui.properties文件禁用

      activiti.ui.jsdiagram = false

      控制臺上顯示流程圖,也可以對流程圖進行查看,根據流程定義的ID,顯示流程定義圖片:

      http://localhost:8080/activiti-explorer/diagram-viewer/index.html?processDefinitionId=reviewSaledLead:1:36

      通過processInstanceId的請求參數,可以顯示當前流程實例的狀態:

      http://localhost:8080/activiti-explorer/diagram-viewer/index.html?processDefinitionId=reviewSaledLead:1:36&processInstanceId=41

      Tasks

      任務

      Inbox: 顯示登錄用戶需要辦理的所有任務列表

      My Tasks: 顯示登錄用戶任務擁有者的任務列表:

      當創建一個獨立的任務時,可以自動化操作該任務

      Queued: 顯示不用的組任務列表,并且登錄用戶在該組中:

      這里的所有任務都必須先拾取,然后才能夠完成

      Involved: 顯示登錄用戶被參與的任務,即不是執行人和任務擁有者

      Archived: 歸檔,包含已經完成歷史任務

      Processes

      Deployed process definitions(部署流程定義)

      在流程定義選項卡中,允許查看Activiti流程引擎部署的所有流程定義

      可以使用頁面頂部右邊的按鈕啟動一個新的流程實例

      如果該流程定義有一個啟動表單, 那么在啟動流程實例之前就會先顯示表單

      My instances(我的流程實例)

      顯示當前登錄用戶未完成的用戶任務的所有流程實例

      直觀地顯示流程實例的當前活動和存儲的流程變量

      Manage

      在管理功能中,只有當登錄用戶是權限組admin中的成員時,該功能才會顯示

      當點擊Manage圖標按鈕:

      Database

      Database: 數據庫.顯示Activiti有關內容.當開發流程或者排除故障等問題的時候是非常有用的

      Deployments

      Deployments: 部署.顯示當前部署的流程引擎,并且可以看到部署的內容:流程定義,流程圖,業務規則,等等…

      當點擊部署按鈕時,可以上傳新的部署:

      從自己的計算機中選擇一個業務文檔或者一個BPMN20.XML文件

      簡單的拖拽到指定的區域就可以部署一個新的業務流程

      Jobs

      Jobs: 作業

      在左邊顯示當前的作業(定時器等等)并且運行手動執行(例如在截止時間之前觸發定時器)

      如果作業執行失敗(例如郵件服務器不能正常工作),那么就會顯示所有的異常

      Users

      Users: 管理用戶

      創建,修改和刪除用戶.關聯用戶

      獲取權限查看任務分配特定用戶信息

      Groups

      Groups: 管理組

      創建,修改和刪除組,關聯組

      獲取權限查看任務分配特定組等信息

      Reports

      報表:

      ==注意:== 如果要讓報表工作,控制臺需要配置歷史的級別不能為none.默認的配置是滿足要求的

      報表選項卡的子選項卡有2個:

      生成報表:

      顯示系統中已知的報表列表

      允許運行生成的報表

      保存報表:

      顯示之前保存的所有報表列表

      僅僅顯示的是個人保存的報表,并且不能看見其他人保存的報表

      流程的數據被用于生成報表中的列表和圖標.使用流程生成報表數據的優勢:

      該流程能夠直接訪問Activiti流程引擎的內部:

      直接可以使用流程引擎訪問數據庫

      作業執行器能夠用于任何其他的流程:

      能夠異步生成流程

      僅僅異步執行某些步驟

      可以使用定時器:在某些時間點上面生成報表數據

      可以用已知的工具和已知的概念創建一個新的報表:

      沒有新的概念,服務或者應用被需要

      部署或者上傳一個新的報表與部署一個新的流程是一樣的

      可以使用BPMN2.0結構:

      意味著所有的東西:比如并行網關,可以實現基于數據或用戶請求輸入生成分支

      生成報表數據的流程定義需要把activiti-report設置為分類,這樣就能在Explorer的報表列表中顯示出來。

      能夠看到報表的唯一要求是:

      流程創建一個名為reportData的流程變量,這個變量必須是json對象的二進制數組

      變量必須保存到Activiti的歷史表中,所以要求引擎必須啟用歷史功能

      因此可以在后面報表保存時獲取

      reportData

      報表流程必須生成一個變量reportData, 作為展示給用戶的JSON數據:

      { "title": "My Report", "datasets": [ { "type" : "lineChart", "description" : "My first chart", "xaxis" : "Year" "yaxis" : "Total sales" "data" : { "2010" : 50, "2011" : 33, "2012" : 17, "2013" : 87, } } ] }

      json數據會在Explorer中獲取,并用來生成圖表或列表

      json的元素有:

      title: 報表的標題

      datasets: 數據集的數組,對應報表中不同的圖表和列表

      type: 數據集的類型. 這個類型會用來決定如何渲染數據,支持的值:

      pieChart

      工作流控制臺Activiti Explorer使用指南!使用Activiti Explorer定義部署執行工作流

      lineChart

      barChart

      list

      description: 每個圖表在報表中顯示一個描述,這個是可選的

      xaxis: 只對lineChart類型起作用,這個參數是可選的,用來修改圖表坐標系x軸的名稱

      yaxis: 只對lineChart類型起作用,這個參數是可選的,用來修改圖表坐標系y軸的名稱

      data: 實際的數據,數據是一個key:value格式的json對象

      流程實例

      流程實例總覽報表:

      只包含一個腳本任務:使用javascript生成json數據集

      雖然所有Explorer中的例子都使用javascript, 也可以使用java服務任務

      執行流程最后的結果就是reportData變量,保存數據

      除了流程xml頂部的標準xml,主要區別是targetNamespace設置為activiti-report, 把分類設置為與部署的流程定義一樣的名稱

      腳本的第一行是進行一些導入,避免每次使用時,都要寫包名

      第一個有意義的代碼是使用ReportingUtil讀取activiti數據庫.返回結果是一個JDBC 結果集

      查詢語句下面 ,javascript創建了使用的json.json是符合上面描述的需求的

      最后一行腳本,首先需要把json對象轉換成字符串,使用javascript函數JSON.stringify(). 字符串需要保存為二進制數組類型的變量

      這是一個技術問題:

      二進制數組的大小是無限的,但是字符串的長度有限制

      這就是為什么javascript字符串必須轉換成一個java字符串以獲得轉換成二進制的功能

      原生json功能無法使用,這里提供了一些幫助類ReportData和Dataset:

      報告開始表單

      報表是使用普通流程來生成的,所以表單功能也可以使用

      直接在開始事件里加一個開始表單 ,Explorer就會在生成報表之前展示給用戶

      為用戶渲染一個普通的表單:

      表單屬性會在啟動流程時提交,然后就可以像普通的流程變量一樣使用.腳本中可以使用這些流程變量來生成數據:

      var processDefinition = execution.getVariable("processDefinition");

      流程示例

      控制臺中包含4個報表示例:

      Employee productivity(員工的工作效率):

      報表演示使用折線圖和開始表單

      報表的腳本比其他例子要復雜,因為數據會在腳本中先進行解釋,再保存到報表數據中

      Helpdesk(一線與升級):

      使用餅圖進行展示

      結合兩個不同的數據庫查詢結果

      Process instance overview(流程實例總覽):

      使用多個數據集的報表實例

      報表包含使用相同數據的餅圖和列表視圖

      展示多種數據集可以用來在一個頁面中生成不同圖表

      Task duration(任務持續時間):

      另一個使用開始表單的例子

      會使用對應的變量來動態生成SQL查詢語句

      修改數據庫

      要修改控制臺例子所用的數據庫:

      改變屬性文件:apps/apache-tomcat-6.x/webapps/activiti-explorer/WEB-INF/classes/db.properties

      在類路徑下放上合適的數據庫驅動:

      Tomcat共享類庫

      在apps/apache-tomcat-6.x/webapps/activiti-explorer/WEB-INF/lib/ 中

      API Explorer 控制臺

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:word怎樣插入excel的柱形圖(如何將excel柱形圖導入word)
      下一篇:ModelArts中Notebook的基本使用
      相關文章
      亚洲av成本人无码网站| 亚洲综合精品香蕉久久网97| 亚洲网站免费观看| 久久亚洲中文字幕精品一区四| 亚洲精品动漫免费二区| 亚洲已满18点击进入在线观看| 亚洲午夜在线一区| 亚洲乱码一二三四五六区| 亚洲欧洲高清有无| 亚洲伊人久久大香线蕉| 亚洲伊人久久精品| 国产精品亚洲综合久久| 亚洲中文字幕AV每天更新| 亚洲欧美精品午睡沙发| 国产精品亚洲专区无码WEB| 少妇亚洲免费精品| 国产福利电影一区二区三区,亚洲国模精品一区| 亚洲另类自拍丝袜第五页| 亚洲成a人片在线观看天堂无码| 亚洲国产精品ⅴa在线观看| 亚洲暴爽av人人爽日日碰| 色天使亚洲综合一区二区| 国产精品亚洲专区一区| 亚洲国产精品一区二区第一页免| 无码欧精品亚洲日韩一区夜夜嗨 | 国产亚洲人成A在线V网站| 亚洲色偷偷综合亚洲AV伊人| 亚洲国产人成精品| 亚洲综合色自拍一区| 亚洲AV综合色区无码另类小说| 亚洲国产精品国自产电影| 亚洲最大黄色网址| 亚洲无mate20pro麻豆| 亚洲国产精品无码久久九九大片 | 亚洲色大成网站www尤物| 亚洲AV无码专区在线厂| 亚洲天堂免费在线视频| 亚洲高清国产拍精品26U| 亚洲午夜久久久精品影院| 亚洲国产精品综合福利专区| 亚洲偷自拍另类图片二区|