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

正文內(nèi)容

工業(yè)研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì)方案(附_mis系統(tǒng)設(shè)計(jì)和網(wǎng)站設(shè)計(jì))-資料下載頁(yè)

2025-06-28 19:55本頁(yè)面

【導(dǎo)讀】XX工業(yè)研究院。辦公自動(dòng)化系統(tǒng)。設(shè)。計(jì)。方。案。XXXX年6月。目錄

  

【正文】 程定義實(shí)例庫(kù)的節(jié)點(diǎn)文檔;而 Data_Id 域用于記錄對(duì)應(yīng)應(yīng)用數(shù)據(jù)文檔的文檔 Id 信息。工作流引擎通過(guò)四個(gè)步驟完成過(guò)程定義實(shí)例的創(chuàng)建和同應(yīng)用數(shù)據(jù)文檔的綁定操作。 (1) 流程節(jié)點(diǎn)文檔復(fù)制 將過(guò)程定義模版庫(kù)中屬于相應(yīng)過(guò)程定義的流程節(jié)點(diǎn)文檔復(fù)制,生成一個(gè)新的 XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 流程節(jié)點(diǎn)文檔。此新節(jié)點(diǎn)文檔的數(shù)據(jù)域的值同 其原型完全相同。 關(guān)鍵代碼如下: ? 在數(shù)據(jù)庫(kù)中創(chuàng)建新文擋 Set newnode = New NotesDocument( db ) ? 將模版庫(kù)中的節(jié)點(diǎn)文檔 node 的全部數(shù)據(jù)域復(fù)制到新文檔 Call ( newnode, True ) (2) 置 Event_Period 域 將新建流程節(jié)點(diǎn)文檔中 Event_Period 數(shù)據(jù)域的值由“模版”改為“實(shí)例”。 關(guān)鍵代碼如下: = “實(shí)例 ” (3) 同應(yīng)用數(shù)據(jù)實(shí)例綁定 將應(yīng)用數(shù)據(jù)文檔如公文文檔的文檔 Id 值置入新建流程節(jié)點(diǎn)文檔的 Data_Id域,從而完成綁定操作。 關(guān)鍵代碼如下: ? data 為應(yīng)用數(shù)據(jù)文檔 = 3. 維護(hù)流程節(jié)點(diǎn)狀態(tài)信息 a) 原理流程 假設(shè)某節(jié)點(diǎn) node 完成了應(yīng)用數(shù)據(jù)文檔處理,接下來(lái)工作流引擎會(huì)通過(guò)設(shè)置流程節(jié)點(diǎn)的狀態(tài)信息來(lái)更新工作流實(shí)例的運(yùn)行狀態(tài)。工作流實(shí)例運(yùn)行狀態(tài)的更新過(guò)程可以用下圖所示的原理流程表達(dá): XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 圖 224 狀態(tài)更新原理流程 從狀態(tài)更新的原理流程中可以看出,狀態(tài)更新過(guò)程由節(jié)點(diǎn) node 完成對(duì)應(yīng)用數(shù)據(jù)文檔的處理觸發(fā),之后工作流引擎分三步來(lái)修改節(jié)點(diǎn)狀態(tài): a. 設(shè)置節(jié)點(diǎn) node 狀態(tài)為 done 當(dāng)流程節(jié)點(diǎn)處理完成后,狀態(tài)有 active 變?yōu)?done。 b. 激活新流程節(jié)點(diǎn) 流程節(jié)點(diǎn)的啟動(dòng)條件決定了節(jié)點(diǎn)何時(shí)被激活,何時(shí)獲得處理權(quán)限。在此步驟 中,工作流引擎通過(guò)構(gòu)造各個(gè)流程節(jié)點(diǎn)的啟動(dòng)條件,判斷其值來(lái)完成節(jié)點(diǎn)處理權(quán)限的傳遞。因?yàn)榱鞒坦?jié)點(diǎn)的啟動(dòng)條件可以通過(guò)其所有前驅(qū)節(jié)點(diǎn)的狀態(tài)信息和流轉(zhuǎn)順序信息的 邏輯組合表達(dá)出來(lái),所以在節(jié)點(diǎn) node 完成處理后,工作流引擎沒(méi)有必要計(jì)算構(gòu)成過(guò)程定義實(shí)例的所有節(jié)點(diǎn)的啟動(dòng)條件,而只需要計(jì)算節(jié)點(diǎn) node 的所有后繼節(jié)點(diǎn)的啟動(dòng)條件即可。 c. 決定哪些節(jié)點(diǎn)的狀態(tài)有 done 變?yōu)?inactive 流程節(jié)點(diǎn)狀態(tài)由 done 轉(zhuǎn)化為 inactive 的必要性在過(guò)程定義模型部分已經(jīng)作 了說(shuō)明,節(jié)點(diǎn)的完成條件規(guī)定了這一狀態(tài)轉(zhuǎn)化的條件。在某節(jié)點(diǎn)完成處理后,工XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 作流引擎通過(guò)計(jì)算其它節(jié)點(diǎn)的完成條件,來(lái)確定哪些狀態(tài)為 done 的節(jié)點(diǎn)可以將狀態(tài)設(shè)置為 inactive。 b) 步驟 1的具體實(shí)現(xiàn) 步驟 1 的目的是在節(jié)點(diǎn) node 完成對(duì)應(yīng)用數(shù)據(jù)文檔的處理以后,將節(jié)點(diǎn)狀態(tài)設(shè)置為 done。 關(guān)鍵代碼如下: = “done” c) 后繼節(jié)點(diǎn)狀態(tài)設(shè)置算法 步驟 2 的目的是設(shè)置節(jié)點(diǎn) node 的后繼節(jié)點(diǎn)的狀態(tài),節(jié)點(diǎn) node 的類型以及其后繼節(jié)點(diǎn)的類型決定了步驟 2 有不同的實(shí)現(xiàn)方式。設(shè)置 node 后繼節(jié)點(diǎn)狀態(tài)的過(guò)程可以用下圖表達(dá): 圖 225 后繼節(jié)點(diǎn)狀態(tài)設(shè)置算法 從圖中可以看出,將設(shè)置 算法依據(jù)節(jié)點(diǎn) node 的分類分為兩種情況: a. 節(jié)點(diǎn) node 為唯一后繼節(jié)點(diǎn)或者發(fā)點(diǎn) XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 此種情況下,節(jié)點(diǎn) node 需要遍歷其所有的后繼節(jié)點(diǎn),計(jì)算每個(gè)后繼續(xù)節(jié)點(diǎn)的啟動(dòng)條件的取值。 b. 節(jié)點(diǎn) node 為選擇性發(fā)點(diǎn) 當(dāng)節(jié)點(diǎn) node 為選擇性發(fā)點(diǎn)時(shí),根據(jù)選擇性發(fā)點(diǎn)的定義,只有一個(gè)后繼節(jié)點(diǎn)可以獲得處理權(quán),因此不需要遍歷其所有的后繼節(jié)點(diǎn),只需計(jì)算其所選定的后繼節(jié)點(diǎn)的啟動(dòng)條件即可。 根據(jù)后繼節(jié)點(diǎn)的類型,計(jì)算啟動(dòng)條件分為兩種情況(狀態(tài)設(shè)置算法 1 和狀態(tài)設(shè)置算法 2): a. 后繼節(jié)點(diǎn)為收點(diǎn)或唯一前驅(qū)節(jié)點(diǎn) 當(dāng)節(jié)點(diǎn) node 的某個(gè)后繼節(jié)點(diǎn) next 為收點(diǎn)或唯一前驅(qū)收點(diǎn)時(shí),在遍歷 next的所有前驅(qū)節(jié)點(diǎn)時(shí),對(duì)每個(gè)前驅(qū)節(jié)點(diǎn)計(jì)算判斷式 (select(prei) CTN next) AND (status(prei) = “done”) 的值,只要有一個(gè)為 false,則 next 的啟動(dòng)條件必然不成立,即可以終止遍歷循環(huán)。 判斷 next 的啟動(dòng)條件值的關(guān)鍵代碼如下: Dim flag as Boolean flag = false ? 遍歷 next 的全部前驅(qū)節(jié)點(diǎn) Forall n In Set prenode = (n) If Not(Select(prenode,next) = true AND (0) = “done”) Then ‘ Select()函數(shù)用于判斷 prenode 所選定的后繼節(jié)點(diǎn)列表中是否包括 next flag = true Exit ForAll End If End Forall ? 設(shè)置后繼節(jié)點(diǎn) next 的狀態(tài) If flag = true then ?節(jié)點(diǎn) next 的啟動(dòng)條件不滿足,狀態(tài)不變 XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) Else ?節(jié)點(diǎn) next 的啟動(dòng)條件滿足,將狀態(tài)變?yōu)?active = “active” True,True,True End If b. 后繼節(jié)點(diǎn)為選擇性收點(diǎn) 當(dāng)節(jié)點(diǎn) node 的某個(gè)后繼節(jié)點(diǎn) next 為選擇性收點(diǎn)時(shí),不需要遍歷 next 的所有前驅(qū)節(jié)點(diǎn),而只需要判斷下式對(duì)節(jié)點(diǎn) node 的取值即可。 (select(node) CTN next) AND (status(nodei) = “done”) 關(guān)鍵代碼如下: If (Select(node,next) = true AND (0) = “done”) then ?Select()函數(shù)用于判斷 node 所選定的后繼節(jié)點(diǎn)列表中是否包括 next = “active” True,True,True Else ?next狀態(tài)保持不變 End If d) 設(shè)置完成條件 得到滿足的流程節(jié)點(diǎn)狀態(tài) 當(dāng)完成對(duì)流程節(jié)點(diǎn) node 的后繼節(jié)點(diǎn)狀態(tài)設(shè)置以后,其后繼節(jié)點(diǎn)狀態(tài)的變化可能使某些節(jié)點(diǎn)的完成條件得到滿足,從而完成流程節(jié)點(diǎn)狀態(tài)信息由 done 向inactive 的轉(zhuǎn)化。在判斷流程節(jié)點(diǎn)的完成條件時(shí),沒(méi)有必要計(jì)算組成過(guò)程定義實(shí)例的所有流程節(jié)點(diǎn)的完成條件,只需要檢查節(jié)點(diǎn) node 的獲得了處理權(quán)的后繼節(jié)點(diǎn)的所有前驅(qū)節(jié)點(diǎn)的完成條件即可。判斷完成條件的處理流程如圖 226 所示。 從流程中可以看到,根據(jù) next 的前驅(qū)節(jié)點(diǎn)類型,構(gòu)造 next 的前驅(qū)節(jié)點(diǎn)的完成條件有兩種方式(完成條件判斷算法 1 和完成條件判斷算 法 2): (2) next 的前驅(qū)節(jié)點(diǎn)為唯一后繼節(jié)點(diǎn)或者發(fā)點(diǎn) 關(guān)鍵代碼如下: Dim flag as Boolean flag = false ? 假設(shè) prenode 為 next 某個(gè)前驅(qū)節(jié)點(diǎn), nextnode 為 prenode 的某個(gè)后繼節(jié)點(diǎn) Forall x In XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) Set nextnode=(GetIdByName(y)) If (0) “active” Then flag=True End If End Forall If flag=True Then ?prenode 的完成條件不滿足,保持狀態(tài)不變 Else = “inactive” True,True,True End If (2) next 的前驅(qū)節(jié)點(diǎn)為選擇性發(fā)點(diǎn) 關(guān)鍵代碼如下: ?假設(shè) prenode 為 next 的某個(gè)具有選擇性發(fā)點(diǎn)類型的前驅(qū)節(jié)點(diǎn), nextnode 為prenode 所選定的獲得處理權(quán)的唯一后繼節(jié)點(diǎn) Set nextnode=(GetIdByName(prenode. SelectEvent(0))) If (0)= “active” then ?prenode 的完成條件得到滿足 = “inactive” True,True,True Else ?prenode 的完成條件不成立,狀態(tài)保持不變 End If XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 圖 226 流程節(jié)點(diǎn)完成條件判斷算法 XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) e) 設(shè)置應(yīng)用數(shù)據(jù)文檔的訪問(wèn)控制列表 公文表單中的 Data_Personlist 數(shù)據(jù)域用于存儲(chǔ)允許訪問(wèn)列表,只有列在此列表中的用戶才具有對(duì)文檔的處理權(quán)限。通過(guò)查找過(guò)程定義實(shí)例中所有狀態(tài)為active 的流程節(jié)點(diǎn),將它們?cè)?Event_Personlist 數(shù)據(jù)域中所指定的處理人姓名添加到應(yīng)用數(shù)據(jù)文檔的 Data_Personlist 數(shù)據(jù)域,來(lái)完成節(jié)點(diǎn)狀態(tài)和應(yīng)用數(shù)據(jù)文檔處理權(quán)限的同步變化。 關(guān)鍵代碼如下: ?假設(shè)過(guò)程定義實(shí)例存 儲(chǔ)在過(guò)程定義實(shí)例視圖 view 中, data 為應(yīng)用數(shù)據(jù)文檔 Set item=(“Data_Personlist”) Set node= While Not(node Is Nothing) ?判斷與此應(yīng)用數(shù)據(jù)文檔相綁定的流程節(jié)點(diǎn)的狀態(tài) If (((0)=) And ((0)= “active”)) Then ?找到了具有處理權(quán)的流程 節(jié)點(diǎn),將其指定的處理人加入到應(yīng)用數(shù)據(jù)文檔的 Data_Personlist 數(shù)據(jù)域中 Call ((0)) True,True,True End If Set node=(node) Wend 六 . 工作流流程定義工具設(shè)計(jì) 流程定義工具的功能可以細(xì)分為: (1) 向用戶提供定義工作流的操作界面 (2) 根據(jù)用戶的輸入自動(dòng)生成以文本 形式表達(dá)的工作流抽象描述 (3) 將以文本形式表達(dá)的工作流抽象描述發(fā)送給格式轉(zhuǎn)化工具組件 1. 類關(guān)系 將流程節(jié)點(diǎn)抽象為流程節(jié)點(diǎn)類( Node),同時(shí),將流程節(jié)點(diǎn)定義中的事件屬性集合、前驅(qū)節(jié)點(diǎn)集合、后繼節(jié)點(diǎn)集合均做對(duì)象化處理,由此產(chǎn)生屬性信息XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) ( Attibute)、前驅(qū)節(jié)點(diǎn)信息( PreNodes)、后繼節(jié)點(diǎn)信息( NextNodes)三個(gè)類。這三個(gè)類同流程節(jié)點(diǎn)類構(gòu)成復(fù)合聚合的關(guān)系,如下圖所示。 圖 227 復(fù)合聚合型的類關(guān)系 2. 類結(jié)構(gòu)設(shè)計(jì) (1) 流程節(jié)點(diǎn)類 (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)。 } 實(shí)際業(yè)務(wù)處理過(guò)程最終會(huì)抽象表達(dá)為一系列流程節(jié)點(diǎn)類實(shí)例的集合。對(duì)流程XX 工業(yè) 研究院辦公自動(dòng)化系統(tǒng)設(shè)計(jì) 節(jié)點(diǎn)類的定義完全遵循流程節(jié)點(diǎn)的定義。 類定義中成員變量和方法的含義在下表中加以說(shuō)明: 表 229 流程節(jié)點(diǎn)類設(shè)計(jì) 成員變量 含義 node_id 流程節(jié)點(diǎn)的唯一標(biāo)識(shí)符 att 對(duì)流程節(jié)點(diǎn)屬性信息類 (Attribute)的引用 p 對(duì)流程節(jié)點(diǎn)前驅(qū)節(jié)點(diǎn)信息類 (PreNodes)的引用 n 對(duì)流程節(jié)點(diǎn)后繼節(jié)點(diǎn)信息類 (NextNodes)的引用 type 流程節(jié)點(diǎn)的類型 方法 作用 getId() 取得流程節(jié)點(diǎn)唯一標(biāo)識(shí) setId() 設(shè)置流程節(jié)點(diǎn)唯一標(biāo)識(shí) getAt
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1