freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

工業(yè)研究院辦公自動化系統(tǒng)設計方案附mis系統(tǒng)設計和網(wǎng)站設計(編輯修改稿)

2025-06-09 03:32 本頁面
 

【文章內容簡介】 計算啟動條件分為兩種情況(狀態(tài)設置算法1和狀態(tài)設置算法2):a. 后繼節(jié)點為收點或唯一前驅節(jié)點當節(jié)點node的某個后繼節(jié)點next為收點或唯一前驅收點時,在遍歷next的所有前驅節(jié)點時,對每個前驅節(jié)點計算判斷式(select(prei) CTN next) AND (status(prei) = “done”) 的值,只要有一個為false,則next的啟動條件必然不成立,即可以終止遍歷循環(huán)。判斷next的啟動條件值的關鍵代碼如下:Dim flag as Booleanflag = false‘ 遍歷next的全部前驅節(jié)點Forall n In Set prenode = (n)If Not(Select(prenode,next) = true AND (0) = “done”) Then ‘Select()函數(shù)用于判斷prenode所選定的后繼節(jié)點列表中是否包括next flag = true Exit ForAll End IfEnd Forall ‘ 設置后繼節(jié)點next的狀態(tài)If flag = true then ‘節(jié)點next的啟動條件不滿足,狀態(tài)不變Else ‘節(jié)點next的啟動條件滿足,將狀態(tài)變?yōu)閍ctive = “active” True,True,TrueEnd Ifb. 后繼節(jié)點為選擇性收點當節(jié)點node的某個后繼節(jié)點next為選擇性收點時,不需要遍歷next的所有前驅節(jié)點,而只需要判斷下式對節(jié)點node的取值即可。(select(node) CTN next) AND (status(nodei) = “done”) 關鍵代碼如下:If (Select(node,next) = true AND (0) = “done”) then‘Select()函數(shù)用于判斷node所選定的后繼節(jié)點列表中是否包括next = “active” True,True,TrueElse ‘next狀態(tài)保持不變End Ifd) 設置完成條件得到滿足的流程節(jié)點狀態(tài)當完成對流程節(jié)點node的后繼節(jié)點狀態(tài)設置以后,其后繼節(jié)點狀態(tài)的變化可能使某些節(jié)點的完成條件得到滿足,從而完成流程節(jié)點狀態(tài)信息由done向inactive的轉化。在判斷流程節(jié)點的完成條件時,沒有必要計算組成過程定義實例的所有流程節(jié)點的完成條件,只需要檢查節(jié)點node的獲得了處理權的后繼節(jié)點的所有前驅節(jié)點的完成條件即可。判斷完成條件的處理流程如圖226所示。從流程中可以看到,根據(jù)next的前驅節(jié)點類型,構造next的前驅節(jié)點的完成條件有兩種方式(完成條件判斷算法1和完成條件判斷算法2):(2) next的前驅節(jié)點為唯一后繼節(jié)點或者發(fā)點關鍵代碼如下:Dim flag as Booleanflag = false‘ 假設prenode為next某個前驅節(jié)點,nextnode為prenode的某個后繼節(jié)點Forall x In Set nextnode=(GetIdByName(y)) If (0) “active” Then flag=True End IfEnd ForallIf flag=True Then ‘prenode的完成條件不滿足,保持狀態(tài)不變Else = “inactive” True,True,TrueEnd If(2) next的前驅節(jié)點為選擇性發(fā)點關鍵代碼如下: ‘假設prenode為next的某個具有選擇性發(fā)點類型的前驅節(jié)點,nextnode為prenode所選定的獲得處理權的唯一后繼節(jié)點Set nextnode=(GetIdByName(prenode. SelectEvent(0)))If (0)= “active” then‘prenode的完成條件得到滿足 = “inactive” True,True,TrueElse ‘prenode的完成條件不成立,狀態(tài)保持不變End If圖226 流程節(jié)點完成條件判斷算法e) 設置應用數(shù)據(jù)文檔的訪問控制列表公文表單中的Data_Personlist數(shù)據(jù)域用于存儲允許訪問列表,只有列在此列表中的用戶才具有對文檔的處理權限。通過查找過程定義實例中所有狀態(tài)為active的流程節(jié)點,將它們在Event_Personlist數(shù)據(jù)域中所指定的處理人姓名添加到應用數(shù)據(jù)文檔的Data_Personlist數(shù)據(jù)域,來完成節(jié)點狀態(tài)和應用數(shù)據(jù)文檔處理權限的同步變化。 關鍵代碼如下: ‘假設過程定義實例存儲在過程定義實例視圖view中,data為應用數(shù)據(jù)文檔 Set item=(“Data_Personlist”) Set node=While Not(node Is Nothing) ‘判斷與此應用數(shù)據(jù)文檔相綁定的流程節(jié)點的狀態(tài)If (((0)=) And ((0)= “active”))Then‘找到了具有處理權的流程節(jié)點,將其指定的處理人加入到應用數(shù)據(jù)文檔的Data_Personlist數(shù)據(jù)域中 Call ((0)) True,True,True End If Set node=(node) Wend六. 工作流流程定義工具設計流程定義工具的功能可以細分為:(1) 向用戶提供定義工作流的操作界面(2) 根據(jù)用戶的輸入自動生成以文本形式表達的工作流抽象描述(3) 將以文本形式表達的工作流抽象描述發(fā)送給格式轉化工具組件1. 類關系將流程節(jié)點抽象為流程節(jié)點類(Node),同時,將流程節(jié)點定義中的事件屬性集合、前驅節(jié)點集合、后繼節(jié)點集合均做對象化處理,由此產生屬性信息(Attibute)、前驅節(jié)點信息(PreNodes)、后繼節(jié)點信息(NextNodes)三個類。這三個類同流程節(jié)點類構成復合聚合的關系,如下圖所示。圖227 復合聚合型的類關系2. 類結構設計(1) 流程節(jié)點類(Node)Class Node{ private String node_id 。 private Attibute att 。 private PreNodes p 。 private NextNodes n 。 private String type 。 privateString status 。 Public String getId()。 Public void setId(String s)。 Public Attibute getAtt() 。 Public PreNodes getP()。 Public NextNodes getN()。 Public String getStatus()。 Public void setStatus(String s)。} 實際業(yè)務處理過程最終會抽象表達為一系列流程節(jié)點類實例的集合。對流程節(jié)點類的定義完全遵循流程節(jié)點的定義。類定義中成員變量和方法的含義在下表中加以說明:表229 流程節(jié)點類設計成員變量含義node_id流程節(jié)點的唯一標識符att對流程節(jié)點屬性信息類(Attribute)的引用p對流程節(jié)點前驅節(jié)點信息類(PreNodes)的引用n對流程節(jié)點后繼節(jié)點信息類(NextNodes)的引用type流程節(jié)點的類型方法作用getId()取得流程節(jié)點唯一標識setId()設置流程節(jié)點唯一標識getAtt()取得節(jié)點狀態(tài)信息類的指針getP()取得節(jié)點前驅節(jié)點信息類的指針gerN()取得節(jié)點后繼節(jié)點信息類的指針getType()取得節(jié)點類型信息serType()設置流程節(jié)點類型信息(2) 屬性信息類(Attibute) Class Attibute { private String node_name 。 private String node_person。 private Boolean node_reply。 private Boolean node_sign。 private String node_body。 Public String getName()。 Public void setName(String s)。 Public String getPerson()。 Public void setPerson(String s)。 Public String getReply()。 Public void setReply(Boolean b)。 Public String getSign()。 Public void setSign(Boolean b)。 Public String getBody()。 Public void setBody(Stirng s)。 }屬性信息類用于表達流程節(jié)點所代表的實際業(yè)務步驟的重要屬性信息。屬性信息類定義中成員變量和方法的含義在下表中加以說明:表2210 屬性信息類設計成員變量含義node_name流程節(jié)點標識名稱node_person流程步驟的處理人。當節(jié)點獲得了處理權以后,只有在此變量中列出的人員才能夠對應用數(shù)據(jù)進行處理node_reply節(jié)點完成處理以后,是否向工作流發(fā)起人發(fā)送已辦通知,取值為false 或 truenode_sign是否在節(jié)點完成處理時,使用手寫簽名認證功能,取值為false 或 truenode_body對節(jié)點所代表的實際業(yè)務步驟的功能的說明方法作用getXXXX()取得相應屬性值setXXXX()設置相應屬性值(3) 前驅節(jié)點信息類(PreNodes) Class PreNodes {ArrayList preList 。Public void addPre()。Public Object getPre(String s)Public int getAcount()。Public void emptyList()。} 前驅節(jié)點信息類用于對流程節(jié)點的前驅節(jié)點進行記錄和管理。 類定義中成員變量和方法的含義在下表中加以說明:表2211 前趨節(jié)點信息類設計成員變量含義preList節(jié)點的前驅節(jié)點引用列表數(shù)組方法作用addPre()向列表中添加新節(jié)點引用getPre()從列表中取得前驅節(jié)點引用getAcount()取得前驅節(jié)點數(shù)目emptyList()清空前驅節(jié)點列表(4) 后繼節(jié)點信息類(NextNodes)Class NextNodes{ ArrayList nextList。Public void addNext() 。 Public Object getNext(String s) 。Public int getAcount()。Public void emptyList()。}后繼節(jié)點信息類用于對流程節(jié)點的后繼節(jié)點進行記錄和管理。 類定義中成員變量和方法的含義在下表中加以說明:表2212 后繼節(jié)點信息類設計成員變量含義nextList節(jié)點的后繼節(jié)點引用列表方法作用addNext()向列表中添加新后繼節(jié)點引用getNext()從列表中取得指定后繼節(jié)點引用getAcount()取得后繼節(jié)點數(shù)目emptyList()清空后繼節(jié)點列表3. 過程定義工具文本輸出格式選擇XML作為工作流抽象描述文本的輸出格式。定義DTD如下:!ELEMENT workflow (node+ ) ! ATTLIST workflow workflowname CDATA REQUIRED workflowtype (public | private) REQUIRED author CDATA REQUIRED !ELEMENT node EMPTY !ATTLIST node nodename CDATA REQUIRED prenodes CDATA REQUIRED nextnodes CDATA REQUIRED type
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1