我院PDM 系統(tǒng)實(shí)施多年,其中的工作流管理模塊是該系統(tǒng)的核心部分之一,通過在設(shè)計(jì)過程中應(yīng)用工作流技術(shù),實(shí)現(xiàn)了設(shè)計(jì)圖紙管理的流程化和規(guī)范化。
1 概述
1.1 工作流
工作流是指能全部或者部分由計(jì)算機(jī)支持或自動(dòng)處理的業(yè)務(wù)過程。工作流管理系統(tǒng)的目標(biāo)是管理工作的流程以確保工作在正確的時(shí)間被所期望的人員執(zhí)行。在企業(yè)中應(yīng)用工作流可以更好地規(guī)劃企業(yè)業(yè)務(wù)流程,減少不必要的中間環(huán)節(jié),提高企業(yè)運(yùn)轉(zhuǎn)效率;實(shí)現(xiàn)業(yè)務(wù)流程的全部或者部分自動(dòng)化;通過工作流中的流程監(jiān)控機(jī)制,能夠發(fā)現(xiàn)業(yè)務(wù)流程運(yùn)行過程中的瓶頸,為業(yè)務(wù)過程優(yōu)化和重新整合提供依據(jù);減少或避免人為因素造成的原則性錯(cuò)誤及由此帶來(lái)的損失;促進(jìn)企業(yè)業(yè)務(wù)改進(jìn),使得趨向于流程的業(yè)務(wù)更加流暢和簡(jiǎn)單。
1.2 PDM 系統(tǒng)
PDM (產(chǎn)品數(shù)據(jù)管理) 是對(duì)工程數(shù)據(jù)管理,文檔管理,產(chǎn)品信息管理,技術(shù)數(shù)據(jù)管理,技術(shù)信息管理,圖像管理及其它產(chǎn)品定義信息管理技術(shù)的一種概括與總稱。PDM 技術(shù)提供了產(chǎn)品全生命周期的信息管理,可為企業(yè)的設(shè)計(jì)與制造過程搭建一個(gè)并行協(xié)同的環(huán)境。PDM 系統(tǒng)也是在分布式企業(yè)管理模式的基礎(chǔ)上,與其它應(yīng)用系統(tǒng)建立集成的重要工具。企業(yè)采用PDM 技術(shù),可以有效地管理CAD/ CAM /CAPP 的異構(gòu)電子文檔,同時(shí)也為企業(yè)的人、才、物、產(chǎn)、供、銷等部門及時(shí)傳送準(zhǔn)確的產(chǎn)品信息。
我院PDM 系統(tǒng)是建立在關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)Oracle上的面向?qū)ο蟮膽?yīng)用管理系統(tǒng),該系統(tǒng)結(jié)構(gòu)從上往下主要分為支持層、對(duì)象層、功能層和用戶層(見圖1)。
圖1 PDM系統(tǒng)體系結(jié)構(gòu)圖
從上圖中可以看到,我院PDM 系統(tǒng)的體系結(jié)構(gòu)采用的是分層模式,下層模塊對(duì)上層模塊提供服務(wù),下層模塊在邏輯上實(shí)現(xiàn)封裝。這樣的體系結(jié)構(gòu)不僅方便PDM 系統(tǒng)設(shè)計(jì)和功能實(shí)現(xiàn),而且PDM 系統(tǒng)結(jié)構(gòu)清晰、完整。
1.3 工作流技術(shù)在PDM系統(tǒng)中的作用
在PDM系統(tǒng)中應(yīng)用工作流技術(shù),可以將企業(yè)的業(yè)務(wù)管理模式定義到工作流中,使產(chǎn)品數(shù)據(jù)通過工作流產(chǎn)生、傳輸和審批,從而對(duì)企業(yè)的運(yùn)作方式、工作順序等進(jìn)行全面性的流程管理。另外,工作流技術(shù)是計(jì)算機(jī)技術(shù)和自動(dòng)化技術(shù)的結(jié)合,可以實(shí)現(xiàn)將PDM 系統(tǒng)中的各部分有效、有序的銜接,使企業(yè)中的每一位員工能夠按照預(yù)先定義好的業(yè)務(wù)規(guī)則去處理工作,企業(yè)的管理者能夠?qū)Ω黜?xiàng)工作的完成情況進(jìn)行有效的監(jiān)督和控制,從而提高企業(yè)的運(yùn)作效率。
2 PDM 中工作流體系結(jié)構(gòu)
與PDM 系統(tǒng)的體系結(jié)構(gòu)相對(duì)應(yīng),工作流模塊也分為四個(gè)層次(見圖2)。
圖2 工作流系統(tǒng)結(jié)構(gòu)示意圖
整個(gè)模塊由數(shù)據(jù)庫(kù)、內(nèi)核層、功能層、界面層組成。數(shù)據(jù)庫(kù)層提供了數(shù)據(jù)存儲(chǔ)的功能,用于存儲(chǔ)PDM 系統(tǒng)中的描述性數(shù)據(jù),目前使用的數(shù)據(jù)庫(kù)為Oracle;內(nèi)核層主要負(fù)責(zé)數(shù)據(jù)庫(kù)的操作,在這一層將標(biāo)準(zhǔn)SQL語(yǔ)句封裝成標(biāo)準(zhǔn)DLL,供COM組件層調(diào)用。通過將標(biāo)準(zhǔn)SQL 語(yǔ)句封裝成DLL 形式,能夠大大降低整個(gè)系統(tǒng)的耦合性,也為系統(tǒng)的多數(shù)據(jù)庫(kù)支持提供的良好的擴(kuò)充性;功能層采用微軟的COM/DCOM 技術(shù),把數(shù)據(jù)對(duì)象抽象為不同的功能類,通過對(duì)內(nèi)核層的調(diào)用,實(shí)現(xiàn)工作流模塊所需的功能。功能層還提供了描述PDM 系統(tǒng)產(chǎn)品數(shù)據(jù)動(dòng)態(tài)變化的基本模型,在此基本模型的基礎(chǔ)上,根據(jù)PDM 系統(tǒng)的需求,可以建立相應(yīng)的功能模塊;界面層是系統(tǒng)與用戶交互的地方,提供友好的人機(jī)交互界面。目前采用的是Windows界面,界面層開發(fā)語(yǔ)言采用VB6。
3 工作流系統(tǒng)的組成和設(shè)計(jì)
3.1 PDM系統(tǒng)中工作流的組成
在我院的PDM 系統(tǒng)中,工作流模型由流程圖、流程節(jié)點(diǎn)和流程路徑三部分組成。
流程圖通過設(shè)置流程的時(shí)間限制、重要性、監(jiān)管人等流程總體信息,定義整個(gè)業(yè)務(wù)流程。流程圖中的流程節(jié)點(diǎn)數(shù)量可依據(jù)具體的業(yè)務(wù)需求而定義。
流程節(jié)點(diǎn)是完成流程任務(wù)的執(zhí)行點(diǎn),是流程的基本單位,負(fù)責(zé)定義流程節(jié)點(diǎn)的工作人員和工作任務(wù)。在流程節(jié)點(diǎn)需要設(shè)置的信息包括執(zhí)行人、要執(zhí)行的任務(wù)、完成任務(wù)的時(shí)間、重要性等。流程節(jié)點(diǎn)中的任務(wù)分為三類,描述性任務(wù)、執(zhí)行具體操作任務(wù)及執(zhí)行用戶自定義腳本。描述性任務(wù)是指需要手工完成的某一具體操作;執(zhí)行具體操作任務(wù)是對(duì)流程中的圖紙或文檔進(jìn)行發(fā)布、歸檔、產(chǎn)生新版本等系統(tǒng)已預(yù)定好的操作;執(zhí)行用戶自定義腳本的任務(wù)是用戶利用VB 等語(yǔ)言編寫自定義函數(shù),執(zhí)行用戶特定功能。在流程節(jié)點(diǎn)有多人時(shí),需設(shè)置該流程節(jié)點(diǎn)的通過策略。在流程執(zhí)行的過程中,通過流程節(jié)點(diǎn)的顏色可以查看流程當(dāng)前的運(yùn)行所處的位置和處理意見。
流程路徑?jīng)Q定了流程的走向,其類型決定了當(dāng)用戶做出某一決定時(shí)流程需經(jīng)過的路徑。如:當(dāng)用戶同意時(shí),流程自動(dòng)將通過的路徑類型定為同意,并激活流程路徑流向的流程節(jié)點(diǎn),從而使這些被激活的流程節(jié)點(diǎn)開始執(zhí)行流程任務(wù),而當(dāng)用戶不同意時(shí),可以依據(jù)流程路徑的方向決定流程返回的節(jié)點(diǎn)位置。
3.2 流程的定義
我院PDM 系統(tǒng)工作流的主要功能包括工作流程設(shè)計(jì)和工作流程管理,工作流程設(shè)計(jì)提供了定義流程單元手段,并將流程單元根據(jù)用戶的指定連接成需要的工作流程,規(guī)定提交工作流程執(zhí)行的設(shè)計(jì)對(duì)象,如部件、零件、文檔等。工作流設(shè)計(jì)主要包括流程類型定義、流程圖設(shè)置和流程用戶設(shè)置。流程類型可根據(jù)業(yè)務(wù)的需要定義;在流程圖設(shè)置過程中可以針對(duì)某一具體的流程類型設(shè)置多個(gè)流程圖,以滿足不同的業(yè)務(wù)運(yùn)行需要;流程用戶設(shè)置負(fù)責(zé)在流程運(yùn)行前指定好用戶(具體用戶或角色),也可以在流程運(yùn)行時(shí)動(dòng)態(tài)選擇。工作流管理主要用于管理運(yùn)行中的流程,設(shè)置流程的權(quán)限、定義流程的有效期等。工作流管理主要針對(duì)整個(gè)流程,不能設(shè)置流程節(jié)點(diǎn)的具體信息。
3.3 工作流系統(tǒng)設(shè)計(jì)
(1)流程模塊的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
根據(jù)流程模塊系統(tǒng)的層次結(jié)構(gòu),把整個(gè)模塊分為三個(gè)層次,第一層是DBLayer 層,即數(shù)據(jù)庫(kù)層,該層主要負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)的操作,不處理具體的業(yè)務(wù)過程,其函數(shù)都封成DLL 的形式,供功能層調(diào)用;第二層是FlowCOM 層,通過對(duì)DBLayer 層的調(diào)用來(lái)實(shí)現(xiàn)具體業(yè)務(wù)功能。該層的函數(shù)都封成COM 的形式,能夠在不同的COM 編程語(yǔ)言中調(diào)用,易于實(shí)現(xiàn)界面的移植;第三層是界面層,用于實(shí)現(xiàn)具體的業(yè)務(wù)流程。通過采用以上層次結(jié)構(gòu),各層的功能劃分比較清晰,在有新的功能需求時(shí),只修改相應(yīng)的層次,而不必對(duì)整個(gè)系統(tǒng)作大的改動(dòng),有利于系統(tǒng)功能的擴(kuò)展。
(2)流程模塊的數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)的設(shè)計(jì)目標(biāo)是建立統(tǒng)一的流程結(jié)構(gòu)與運(yùn)行規(guī)則。使用的數(shù)據(jù)庫(kù)為商用關(guān)系型數(shù)據(jù)庫(kù)Oracle。根據(jù)我院PDM 系統(tǒng)的具體需求,一共建立了40 個(gè)表,以滿足系統(tǒng)正常運(yùn)行,保證PDM系統(tǒng)數(shù)據(jù)的完整性,同時(shí)也符合數(shù)據(jù)庫(kù)第三范式的要求。比如表PDM_IMPORTANCE,用于記錄流程的重要性,表PDM_CF_NODE_TYPE 用于記錄流程節(jié)點(diǎn)類型,表PDM_CF_RESP_TYPE 用于記錄流程路徑類型等。為了方便數(shù)據(jù)庫(kù)設(shè)計(jì),系統(tǒng)提供的強(qiáng)大的數(shù)據(jù)庫(kù)設(shè)計(jì)工具,使用該工具進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),系統(tǒng)自動(dòng)在相應(yīng)的表中添加數(shù)據(jù)。
(3)流程模塊的功能層設(shè)計(jì)
功能層通過對(duì)內(nèi)核層的調(diào)用,實(shí)現(xiàn)各個(gè)模塊的功能,其數(shù)據(jù)被封裝成COM 形式,以便于上層使用。功能層通過相應(yīng)的類實(shí)現(xiàn)了工作流中的基本單元,比如類CuFlowsCharts 是流程圖集合類,該類中包含了有關(guān)處理流程圖的方法,類CuFlowNodes為具體的流程類,該類中包含了有關(guān)處理流程節(jié)點(diǎn)的方法。功能層共提供了60 多個(gè)類,每個(gè)類封裝了工作流基本單元的方法實(shí)現(xiàn),方便界面層根據(jù)不同的功能需求來(lái)調(diào)用。
(4)流程模塊的界面層設(shè)計(jì)
工作流的界面層設(shè)計(jì)包含了3 個(gè)模塊,分別是流程圖設(shè)計(jì)模塊(FlowChart Designer)、流程運(yùn)行模塊(Flow Manager) 和流程管理模塊(FlowBox)。
①流程圖設(shè)計(jì)模塊用于建立保存流程圖及把流程圖分配給流程。在新建流程圖時(shí)可以選擇具體的流程類型,目前系統(tǒng)提供的流程類型大致為校審流程、借閱流程、歸檔流程、更改流程、打印流程、一般流程,滿足了我院PDM系統(tǒng)的需求。在新建流程圖時(shí)也可以定義流程圖的屬性,比如流程的時(shí)間限制、流程圖檔安全性、是否允許回退到起點(diǎn)等。在流程圖設(shè)計(jì)模塊中也提供了流程節(jié)點(diǎn)和流程路徑的屬性定義等操作,比如在定義流程節(jié)點(diǎn)時(shí),可以設(shè)定接收流程的工作人員和需要工作人員完成的工作任務(wù)。
②FlowBox是流程運(yùn)行模塊,使用FlowBox可以啟動(dòng)流程、接收流程、執(zhí)行任務(wù)和發(fā)送流程。FlowBox是用戶操作流程的主要界面。初始化流程時(shí),通過選擇已經(jīng)定義的流程,選擇流程中待處理的圖檔,然后單擊“批準(zhǔn)”初始化流程。流程信箱中提供填寫和查看流程審批意見功能。在FlowBox中收到流程后,可以打開流程,瀏覽流程中的圖檔和任務(wù)。FlowBox分成收件箱、發(fā)件箱、已完成流程和已刪除流程。收件箱用于顯示待處理的流程,發(fā)件箱用于顯示已經(jīng)被“批準(zhǔn)”或“否決”的流程,已完成流程顯示已經(jīng)完成的流程,已刪除流程顯示已經(jīng)刪除的流程。
③Flow Manager 是流程管理模塊,系統(tǒng)管理員可以使用它來(lái)查看和監(jiān)控正在運(yùn)行的流程以及設(shè)置流程的權(quán)限,對(duì)出現(xiàn)問題或過期的流程進(jìn)行處理。Flow Manager在對(duì)已經(jīng)初始化的流程進(jìn)行在線瀏覽和監(jiān)控時(shí),不僅可以瀏覽流程的節(jié)點(diǎn),也可以通過瀏覽器查看流程中附帶的設(shè)計(jì)資料,F(xiàn)low Manager提供靈活的流程調(diào)整功能,可以很容易地更改流程節(jié)點(diǎn)用戶或流程任務(wù),重新設(shè)置或刪除流程。例如,如果某人出差,管理員可以進(jìn)入出差人的流程信箱,把任務(wù)重新分配給別人。
4 結(jié)語(yǔ)
通過在PDM系統(tǒng)中應(yīng)用工作流技術(shù),為信息化管理過程的自動(dòng)化提供了技術(shù)保證,實(shí)現(xiàn)了設(shè)計(jì)圖紙管理流程化的目標(biāo)。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:PDM系統(tǒng)中的工作流管理模塊分析
本文網(wǎng)址:http://www.ezxoed.cn/html/solutions/1401935396.html