李毅 王新軍 李振 王飛超
(1.山東省計量科學研究院 山東濟南 250014;2.齊魯師范學院 山東濟南 250200)
隨著計算機、數據庫、網絡與通信等現代信息技術的飛速發展,極大地改變了傳統的管理體制和機制。計量技術機構利用信息化技術加強管理的要求越來越高,而公務出差的信息化管理在機構管理體系中是不可或缺的,如何用信息化的手段管理公務出差審批流程,實時跟蹤每一條審批進度,從而提高辦公效率,實現無紙化辦公,建立電子化檔案,達到數字化計量的目標,具有重要的現實意義。本文就對如何實現這個目標進行了詳細的分析和研究。
.Net工作流引擎問世以來,經過多年的發展,它已經成為應用系統重要的一部分,目前的應用范圍也相當寬泛,不僅包括流程管理,甚至還有助于解決算法流程控制等。它主要包括數據模型和控制模型兩大部分,可以分為嵌入式和非嵌入式兩種類型。其目的是通過將任務分解成定義良好的任務、角色,按照一定的規則和過程來執行這些任務并對它們進行監控[1],從而可以規范工作流程,極大地提高工作效率,節省單位運行成本。
VBA 是Visual Basic for Applications 的簡稱,是微軟公司在1993年發布的一種通用的自動化編程語言,它的主要功能是用來拓展人們日常辦公軟件的各種功能,它基于VB,是指VBA 中的編程規范要符合VB 的語法要求,但VBA 中的已有自己獨有的各種對象,而不是所有VB 都有的。Office VBA 編程能夠使文檔的編輯工作自動化[2],從而提高文檔的使用效率。本系統采用VBA技術,結合Office內部自帶的書簽、窗體域等工具,來實現文檔中的簽名、審批意見、審批日期等數據信息的在線自動生成功能。
公務出差系統里包含大量重要的、敏感的業務數據,所以如何保證數據的安全性和系統的穩定性是一個需要認真考慮的問題。本系統采用雙機熱備的方式進行部署,雙機熱備具有實時數據熱備、迅速找回丟失的數據、實時異地容災、數據完整復制等功能。雙機熱備按照工作方式進行分類,可以分為磁盤陣列方式、全冗余方式和復制方式3 種類型[3]。目前應用最廣、最標準的方案是第一種,即基于磁盤陣列的雙機熱備。雙機熱備的工作原理主要包含心跳工作過程和IP 工作過程兩個方面,主機和備機之間通過IP 做心跳檢測,通過一定的心跳路徑,發出周期性的相互檢測的數據包,如果一旦主機出現系統故障,備機在連續丟失相應數量的檢測包后,認為主機發生了故障,這時備機會自動啟動相關的服務,完成雙機熱備容錯的切換工作。
根據實際需求調研,公務出差審批主要包括出差申請、出差審批、出差確認、出差報銷、出差歸檔、出差查閱等六大模塊。本系統將審批流程設計成一個通用的工作流,然后從系統中單獨提取出來,作為一個核心工作模塊,此模塊主要包括流程啟動、流程調度、流程審批等功能。具體實現原理是通過創建流程實例、管理流程清單、執行流程步驟及實時監控工作流的各種運行狀態來實現流程的平穩運行[4]。其中各模塊的組成部分有信息輸入模塊、工作流執行模塊、信息輸出模塊等。各個模塊的基本信息在工作流模塊之間高效地傳遞,每一級流程信息的輸入為上一級流程信息的輸出,各種信息相互關聯,緊密聯系,從而實現了數據共享功能,使得系統審批流程更加清晰、高效,同時極大地方便了系統的后期升級。系統審批流程如圖1所示。

圖1 公務出差審批流程示意圖
為了使用戶能夠自由、便捷地配置流程信息,本系統采用了表單信息填寫驅動流程的工作流設計方案。工作流服務器由可視化的工作流構造器、工作流解釋器及組件庫等三部分組成。Web服務器在接收到客戶端發送的出差申請或者審批信息后,將客戶端提交的請求信息,根據自定義表單模型解析并持久化后,將處理后的數據傳遞給工作流引擎服務器[5]。工作流引擎獲取控制流需要的表單數據,然后根據執行結果和相應規則,執行審批流程的調度,并生成任務列表,任務列表再根據相應的操作選擇觸發事件來調用相應的處理流程。工作流模塊如圖2所示。

圖2 工作流示意圖
通過網上公務出差審批系統,院領導和員工能夠實時跟蹤每一條申請記錄的相關審批和辦理進度,查閱全院及個人的出差統計和明細數據,審閱相關的公務出差調研報告及其他附件信息,并根據審批情況和匯總統計結果及時溝通反饋。出差人員登錄系統,進入出差申請填報界面,填寫出差日期、地點、單位和住宿等信息并提交后,該申請將自動進入待領導審批環節,按照系統預先設定的工作流程和審批條件,流轉至相關部門審批或者確認、報銷,由相關人員在線進行數據和流程處理,并自動生成電子簽名和簽名日期,按照審批流程各級部門審批完成后,相關人員可以打印、歸檔、查閱及統計匯總數據和各業務部門的公務出差申請情況。系統分為以下幾部分。
本模塊主要管理系統的登錄用戶相關信息,如姓名、性別、籍貫、所屬部門,給登錄用戶分配相應的用戶名、密碼、電子簽名等。
本模塊主要服務于系統管理員。管理員配置出差審批系統的全部角色,定義每個角色所對應的菜單權限和數據權限,再將角色分配給每一個登錄用戶,從而控制各個登錄用戶的申請、審批、確認、查詢、打印、統計及歸檔等權限。
在流程定義模塊中,工作流有過程、活動及工作項等3種對象,每個對象的工作狀態是各不相同的,各個對象的狀態躍遷在相互之間進行影響。具體來說,工作流引擎就類似一臺有限的狀態機,工作流對象的瞬時狀態在有限機中占據了大部分內容,而且對象狀態之間的變遷也會相互影響,各個對象及其狀態就組成了公務出差審批系統的流程定義清單。工作流過程實例狀態變化設計如圖3所示。

圖3 過程實例狀態圖
其中,工作流控制模塊的主要作用是,在工作流中各種活動的串行或并行執行過程中,引導業務流程按照預先設定的方向進行流轉,從而實現業務流程的事務性處理,如果活動在執行過程中出現了異常狀態,將及時進行掛起或者關閉處理。在公務出差審批系統中,主要使用了串行控制策略[6]。任務執行者從新建的公務出差Web頁面中,獲取流程定義清單,選擇相應的流程,從而進入啟動流程的Web 頁面,輸入文件編號、備注等信息后,點擊提交按鈕,流程啟動。流程控制的序列圖如圖4所示。

圖4 流程控制序列圖
本模塊運用圖形化設計工具,對工作流中的流程進行定義,并對控制模塊進行了設計,同時定義了公務出差申請的模板及其對應的審批流程和入口條件,確定執行各項審批任務的角色、人員以及相應的審批動作,對有分支的審批流程,則同樣設置相應的審批條件。系統審批流程設計界面如5所示。
本模塊主要用來統計查詢所有的公務出差的實時狀態,并及時跟蹤審批進度。
本系統采用了跨平臺的開發語言,集成了先進的技術架構,充分保證了系統的運行穩定性、數據安全性和流程規范性,并緊密集成到省級法定檢定機構的綜合辦公系統中,實現了公務出差的網上申請、審批、打印、歸檔及查閱等功能,極大地提高了工作效率,節省了辦公的費用,解決了多園區審批流程慢、效率低的問題。本系統采用雙機熱備的方式進行部署,保證了數據安全可靠地運行,在實際使用中獲得了良好的應用效果。

圖5 審批流程設計界面