gdufo

           

          JBPM 中如何實現任務回退,并且分配給指定的人

          http://jbpm.group.javaeye.com/group/topic/650?page=1

          舉個例子說:有個task是"申請",它的Actor是多個人.張三提出"申請"后提交給另一個task "審批",審批不通過要退回給張三,而其他人(李四)不會分配到該任務.
          我是這樣定義的:
             1. <process-definition xmlns="" name="Simple">  
             2.        
          <swimlane name="sa_employee">  
             3.          
          <assignment pooled-actors="張三,李四"/>  
             4.        
          </swimlane>  
             5.        
          <swimlane name="sa_lead">  
             6.          
          <assignment pooled-actors="王五"/>  
             7.        
          </swimlane>  
             8.        
          <!-- 申請 -->   
             9.        
          <start-state name="申請">  
            10.           
          <task name="申請" swimlane="sa_employee">   
            11.             
          <controller>   
            12.                 
          <variable name="name" />   
            13.                 
          <variable name="day" />   
            14.                 
          <variable name="note" />  
            15.                 
          <variable name="comment" access="read" />  
            16.                 
          <variable name="modifyflag" />  
            17.             
          </controller>   
            18.           
          </task>  
            19.           
          <transition name="提交" to="審批"></transition>  
            20.        
          </start-state>   
            21.     
          <!-- 審批 -->   
            22.     
          <task-node name="審批">  
            23.         
          <task name="審批" swimlane="sa_lead">  
            24.             
          <controller>   
            25.                 
          <variable name="name" access="read" />   
            26.                 
          <variable name="day" access="read" />   
            27.                 
          <variable name="note" access="read" />  
            28.                 
          <variable name="comment" />  
            29.                 
          <variable name="modifyflag" />  
            30.             
          </controller>   
            31.          
          </task>  
            32.       
          <transition name="修改" to="申請"></transition>  
            33.       
          <transition name="通過" to="結束"></transition>   
            34.     
          </task-node>   
            35.     
          <!-- 結束 -->   
            36.     
          <end-state name="結束" />  
            37. 
          </process-definition>  

           
          這個問題其實也是我以前提到過的問題,在我的項目中也有這樣的需求。我是通過程序來實現的。
          1、給整個processInstance指定一個流程變量preActor,用來記錄上一個節點由誰完成的;

          2、當task被打回的時候根據這個preAction在設定任務的Actor就可以了。
          呵呵。不錯的做法。
          引用 收藏
           
          根據NAME來判別嗎?
           
          直接調用TaskInstance.getPreviousActId()方法,獲得上一個任務的執行者,任務回退后,后在任務設定這個Actor就OK了

          posted on 2008-09-17 22:06 gdufo 閱讀(2255) 評論(1)  編輯  收藏 所屬分類: workflow

          評論

          # re: JBPM 中如何實現任務回退,并且分配給指定的人 2012-11-06 11:30 p27135@163.com

          那如果要連續駁回呢?怎么處理?  回復  更多評論   

          導航

          統計

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Hibernate

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 江城| 株洲市| 开封县| 彭山县| 湖南省| 枣强县| 锡林郭勒盟| 北票市| 霍邱县| 卢氏县| 潼南县| 忻城县| 乳山市| 胶州市| 红安县| 福鼎市| 晋中市| 英山县| 嘉兴市| 霍林郭勒市| 闽侯县| 三明市| 南昌市| 长海县| 镇康县| 尉氏县| 黔东| 桑植县| 汽车| 汉寿县| 泾源县| 浮山县| 京山县| 泾川县| 珲春市| 临沭县| 宁远县| 漯河市| 突泉县| 平江县| 蓬莱市|