<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 26,  comments - 7,  trackbacks - 0
     
         摘要: 業務流程管理(BPM)是一個當前軟件行業最熱門的市場分類。BPM是模塊化,自動化,管理和優化業務流程來獲取利潤的學科。

      閱讀全文
    posted @ 2007-09-11 17:37 jbpm 閱讀(528) | 評論 (0)編輯 收藏

    作者: nogocn 

    在某一公司中,部門員工要休假的話需要部門主管的批準。如果休假天數大于10天的話,在部門主管的同意后,還必須上級主管批準。如果是部門主管要休假只要上級主管批準即可。在休假被批準之前,申請人可以撤銷休假申請。
    每個員工還有多少天休假必須管理起來,在員工提交休假申請時要檢查申請天數是否超過可用天數。申請批準后,要在可用天數里減去申請天數。每次休假申請結束之后,不管通過未通過或是否取消,都必須記錄下來。主管在批復申請之后,系統要將批復結果Email給申請人。對于大于10天的申請,如果部門主管已批準同意而上級主管還未批準,這時申請人撤銷申請后,系統應發Email通知部門主管申請已撤銷。 
      processdefinition.xml
    如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- edited with XMLSPY v2004 rel. 3 U (
    http://www.xmlspy.com) by Keller (zju) -->
    <!DOCTYPE process-definition PUBLIC
        "-//jBpm/jBpm Mapping DTD 2.0//EN"
        "
    http://jbpm.org/dtd/processdefinition-2.0.dtd">
    <process-definition  name="RequestLeave">
     <swimlane name="requester">
      <description>
    申請者</description>
     </swimlane>
     <swimlane name="chief">
      <description>
    部門主管
    </description>
      <delegation class="kellerdu.jbpm.delegation.ChiefSwimlane"/>
     </swimlane>
     <swimlane name="boss">
      <description>
    上級主管
    </description>
      <delegation class="kellerdu.jbpm.delegation.BossSwimlane"/>
     </swimlane>
     <start-state name="request" swimlane="requester">
      <transition to="Begin Request"/>
     </start-state>
     <fork name="Begin Request">
      <transition to="Requester Cancel"/>
      <transition to="IsChief"/>
     </fork>
     <decision name="IsChief">
      <delegation class="kellerdu.jbpm.delegation.ChiefDecision"/>
      <transition name="Boss Approve"  to="Boss Approve"/>
      <transition name="Chief Approve"  to="Chief Approve"/>
     </decision>
     <state name="Requester Cancel">
      <assignment swimlane="requester"/>
      <transition name="cancel" to="Decided">
       <action>
        <!--
    將請假的狀態改變為取消
    ”-->
        <delegation class="kellerdu.jbpm.action.RequestCancel"/>
       </action>
      </transition>
     </state>
     <state name="Chief Approve">
      <assignment swimlane="chief"/>
      <transition name="approve" to="NeedBossApprove">
       <action>
        <!--
    將請假的狀態改變為主管批準
    ”-->
        <delegation class="kellerdu.jbpm.action.ChiefApprove"/>
       </action>
      </transition>
      <transition name="disapprove" to="Decided">
       <action>
        <!--
    將請假的狀態改變為主管否決
    ”-->
        <delegation class="kellerdu.jbpm.action.ChiefDisapprove"/>
       </action>
      </transition>
     </state>
     <state name="Boss Approve">
      <assignment swimlane="boss"/>
      <transition name="approve" to="Decided">
       <action>
        <!--
    將請假的狀態改變為老板批準
    ”-->
        <delegation class="kellerdu.jbpm.action.BossApprove"/>
       </action>
      </transition>
      <transition name="disapprove" to="Decided">
       <action>
        <!--
    將請假的狀態改變為老板否決
    ”-->
        <delegation class="kellerdu.jbpm.action.BossDisapprove"/>
       </action>
      </transition>
     </state>
     <decision name="NeedBossApprove">
      <!--
    請假天數大于10天的要老板批準
      -->
      <delegation class="kellerdu.jbpm.delegation.NeedBossApproveDecision"/>
      <transition name="need" to="Boss Approve"/>
      <transition name="notNeed" to="Decided"/>
     </decision>
     <join name="Decided">
      <description>
    有一個先到達即進行父
    Token</description>
      <delegation class="kellerdu.jbpm.delegation.DecidedJoin"/>
      <transition to="Do Something"/>
     </join>
     <decision name="Do Something">
      <description>
       
    根據請求的狀態決定。

       
    1主管或者老板批準‘approve’:修改員工休假的總天數,設定發給用戶E-Mail的信息。
       
    2主管或者老板否決”-“disapprove”:設定發給用戶EMail的信息。
       
    3撤銷”-"cancel"-設定發給用戶EMail的信息。如果主管批準,要發給主管消息說明已經撤銷。
        </description>
      <delegation class="kellerdu.jbpm.delegation.DoSomethingDecision"/>
      <transition name="disapprove" to="Finished">
       <action>
        <delegation class="kellerdu.jbpm.action.Disapprove"/>
       </action>
      </transition>
      <transition name="approve" to="Finished">
       <action>
        <delegation class="kellerdu.jbpm.action.Approve"/>
       </action>
      </transition>
      <transition name="cancel" to="Finished">
       <action>
        <delegation class="kellerdu.jbpm.action.Cancel"/>
       </action>
      </transition>
     </decision>
     <end-state name="Finished"/>
     <action event-type="process-end">
      <!--
    發送EMail消息給申請者,記錄請假日志 -->
      <delegation class="kellerdu.jbpm.action.ProcessEndAction"/>
     </action>
    </process-definition>

     


    posted @ 2007-09-11 13:47 jbpm 閱讀(2419) | 評論 (0)編輯 收藏
         摘要: JBoss jBPM為設計及開發工作流和業務流程管理系統提供了一個先進的平臺。由API、特定領域的語言和圖形建模工具組成的框架讓開發人員和業務分析人員能夠使用通用平臺進行溝通及操作。  閱讀全文
    posted @ 2007-09-11 13:35 jbpm 閱讀(458) | 評論 (0)編輯 收藏

    轉自: 百度

    jBPM,全稱是Java Business Process Management,是一種基于J2EE的輕量級工作流管理系統。jBPM是公開源代碼項目,它使用要遵循 Apache LicensejBPM20041018,發布了2.0版本,并在同一天加入了JBoss,成為了JBoss企業中間件平臺的一個組成部分,它的名稱也改成JBoss jBPM。隨著jBPM加入JBoss組織,jBPM也將進入一個全新的發展時代,它的前景是十分光明的。

    jBPM
    最大的特色就是它的商務邏輯定義沒有采用目前的一些規范,如WfMC´s XPDL, BPML, ebXML, BPEL4WS等,而是采用了它自己定義的Process defiJBoss jBPM nition language (jPdl)jPdl認為一個商務流程可以被看作是一個UML狀態圖。jPdl就是詳細定義了這個狀態圖的每個部分,如起始、結束狀態,狀態之間的轉換等。


    jBPM
    的另一個特色是它使用Hibernate來管理它的數據庫。Hibernate是目前Java領域最好的一種數據持久層解決方案。通過HibernatejBPM將數據的管理職能分離出去,自己專注于商務邏輯的處理。

    posted @ 2007-09-11 13:32 jbpm 閱讀(385) | 評論 (0)編輯 收藏
    作者: fndcz

    1.     JPDL的流程定義元素

    1)        第一層:GraphElement

    這個容易理解,因為在畫流程定義時,每個拖拉的對象都是一個graph的元素。GraphElement有四個屬性:

    (1)processDefine 表示當前元素屬于哪個流程定義

    (2)events 表示可以接收哪些event

    (3)name 名字

    (4)exceptionHandlers 異常處理類集合(List)

    2)        第二層:nodeprocessDefinitionTransitionTask

    它們都繼承自GraphElement

    (1)processDefinition表示流程定義(implements NodeCollection),它有下面的屬性:nameversionnodesstartStatenodes表示流程中所有的nodestartState用于啟動流程時找到首節點。

    (2)Transition表示轉移,它有三個屬性:from(Node)to(Node)supportedEventTypes表示支持的event類型

    (3)node表示節點,它有四個屬性:leaving transitionsarriving transitionsactionsuperState

    (4)Task 定義任務

    3)        第三層:各種不同的node

    它們都繼承自node DecisionEndStateForkJoinMergeMilestone InterleaveEndInterleaveStartProcessStateState

     

    posted @ 2007-09-11 13:29 jbpm 閱讀(576) | 評論 (0)編輯 收藏
         摘要: 1概述
    一個流程定義是對一個業務流程的正式說明,以及它是基于有向圖的。該圖是結點(node)與流向(transition)的組合。圖中每一個結點都是一個特殊的類型,結果的類型決定了該結點的運行時的行為。一個流程定義有且僅有一個開始狀態。
    一個令牌(token)是執行的軌跡。令牌是一個運行時的概念,其維護著速個圖中指向結點的指針。
      閱讀全文
    posted @ 2007-09-11 13:27 jbpm 閱讀(726) | 評論 (0)編輯 收藏
    僅列出標題
    共3頁: 上一頁 1 2 3 
    主站蜘蛛池模板: 国产成人精品日本亚洲专区6| 久久国产亚洲观看| 亚洲欧洲av综合色无码| 无人在线直播免费观看| 亚洲国产精品成人久久久| 亚洲AV日韩AV天堂一区二区三区 | 国产亚洲情侣一区二区无码AV | 国产自偷亚洲精品页65页| 亚洲精品成人久久| 4虎1515hh永久免费| 亚洲一区中文字幕在线电影网| 九九免费久久这里有精品23| 亚洲精品无码专区久久同性男| 久久成人永久免费播放| 在线免费观看韩国a视频| 美女裸免费观看网站| 国产成人精品久久亚洲高清不卡 | 99久久婷婷国产综合亚洲| 午夜dj免费在线观看| 国产亚洲视频在线观看网址| 国产免费不卡v片在线观看| 亚洲日本VA午夜在线电影| 免费少妇a级毛片人成网| 亚洲熟女综合一区二区三区| 四虎在线视频免费观看视频| 亚洲乱码国产乱码精华| 又大又黄又粗又爽的免费视频| 国产在线观a免费观看| 亚洲精品白色在线发布| 日本媚薬痉挛在线观看免费| 久青草视频97国内免费影视| 91亚洲国产成人久久精品 | 亚洲av中文无码字幕色不卡| 亚洲毛片av日韩av无码| 中文字幕免费高清视频| 亚洲a∨国产av综合av下载| 日韩黄色免费观看| 免费精品99久久国产综合精品| 日韩亚洲人成在线| 啦啦啦www免费视频| 青青操免费在线观看|