天天看點

Activity(四)流程設計工具建立流程圖

1、引言

在前面我們知道了怎麼建立流程控制引擎,而Activiti 的正常使用還需要進行部署流程,而這就有一個很重要的前提。那就是建立相應的流程圖,并讓其能被 service 所調用進而實作流程的執行。

2、流程圖建立工具

2.1 簡述第一種建立方式

在這裡說明一點,流程圖的建立可以使用兩種方式,第一種是XML版本的,案例如下:

我們看到的是一個無開始事件(左側的圓圈),後面是兩個使用者任務:“寫每月财務報告”和 “驗證每月财務報告”,以一個無結束事件(右側帶有粗邊框的圓圈)結束。

  • 在這裡,start task 告訴我們什麼入口點的過程。
  • 在 user task 聲明是我們的過程的人工任務的表示。請注意,第一個任務配置設定給會計組,而第二個任務配置設定給管理組。有關如何将使用者群組配置設定給使用者任務的更多資訊,請參見使用者任務配置設定部分。
  • 當到達 end task 時,該過程結束。
  • 這些元素通過順序流互相連接配接。這些順序流具有source和target,用于定義順序流的方向。

其對應的xml 版本的配置如下:

<definitions id="definitions"
  targetNamespace="http://activiti.org/bpmn20"
  xmlns:activiti="http://activiti.org/bpmn"
  xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL">

	<process id="financialReport" name="Monthly financial report reminder process">

	  <startEvent id="theStart" />

	  <sequenceFlow id='flow1' sourceRef='theStart' targetRef='writeReportTask' />

	  <userTask id="writeReportTask" name="Write monthly financial report" >
	    <documentation>
	      Write monthly financial report for publication to shareholders.
	    </documentation>
	    <potentialOwner>
	      <resourceAssignmentExpression>
	        <formalExpression>accountancy</formalExpression>
	      </resourceAssignmentExpression>
	    </potentialOwner>
	  </userTask>

	  <sequenceFlow id='flow2' sourceRef='writeReportTask' targetRef='verifyReportTask' />

	  <userTask id="verifyReportTask" name="Verify monthly financial report" >
	    <documentation>
	      Verify monthly financial report composed by the accountancy department.
	      This financial report is going to be sent to all the company shareholders.
	    </documentation>
	    <potentialOwner>
	      <resourceAssignmentExpression>
	        <formalExpression>management</formalExpression>
	      </resourceAssignmentExpression>
	    </potentialOwner>
	  </userTask>

	  <sequenceFlow id='flow3' sourceRef='verifyReportTask' targetRef='theEnd' />

	  <endEvent id="theEnd" />

	</process>

</definitions>
           

2.2 視圖模式建立流程圖

這裡我們建立一個簡單的流程圖作為示範入門。

開發流程 首先要做的,就是要設計好流程圖;一個項目可能會包括多個流程圖;是以在src/test/resources源檔案夾下建立一個包diagrams,以後所有的流程圖檔案(bpmn檔案和生成的png檔案)都放在這個包下;

然後在diagrams上右擊,New - > Other :建立一個新的流程執行個體圖

選擇 Activiti下的 Activiti Diagram 要開始開發一個Activiti流程圖表:

這裡 中間區域,是用來繪制流程圖示的。右側是繪制流程圖示的工具箱,下面的Properties是屬性視圖,目前看到的是整個helloWorld流程圖的屬性:

然後來畫流程圖,任何流程,都必須有一個開始事件節點和結束事件節點:

在右側的工具箱裡會看到有個StartEvent 和EndEvent。先點下 然後拖到中間的繪圖區域就OK了;

當然每個節點的屬性都可以看到,而且可以設定,可以點選選中一個節點,然後在屬性視圖上看到是以值;

會看到這裡插件都給設定了初識屬性值,可以改 ,也可以不改,都行;

之後在搞一個使用者任務節點(開發最常用的節點),拖一個到中間繪圖區域

這裡的任務節點,必須要有一個人去處理這個任務,而且在實際開發中,根據實際業務,給這個使用者任務節點取個名字,

當然這裡是初識,是以就搞個myprocess名字,然後配置設定給“小龍”這個人;

這樣就完成了最簡單的流程圖設計。

轉載自 :Activity(四)流程設計工具建立流程圖

繼續閱讀