gdufo

           

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

          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="結(jié)束"></transition>   
            34.     
          </task-node>   
            35.     
          <!-- 結(jié)束 -->   
            36.     
          <end-state name="結(jié)束" />  
            37. 
          </process-definition>  

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

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

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

          評論

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

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


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          導航

          統(tǒng)計

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Hibernate

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 华阴市| 永春县| 商城县| 保康县| 扎兰屯市| 泰顺县| 波密县| 仁布县| 宜川县| 凤冈县| 华阴市| 平原县| 东阳市| 灵石县| 玛曲县| 新密市| 深州市| 海南省| 海安县| 沾益县| 晋中市| 昆明市| 乌兰浩特市| 明星| 郯城县| 山阳县| 瓦房店市| 阳新县| 八宿县| 黄大仙区| 肥城市| 阳江市| 双峰县| 西充县| 巧家县| 沾化县| 磐石市| 温宿县| 铅山县| 铁力市| 拜泉县|