(中國飛行試驗研究院,西安 710089)
隨著電子信息化技術(shù)的不斷發(fā)展,尤其是網(wǎng)絡(luò)技術(shù)的不斷進步及其應(yīng)用領(lǐng)域的不斷拓展,數(shù)據(jù)庫的概念在各個領(lǐng)域也得到了越來越多的應(yīng)用。隨著大數(shù)據(jù)時代的到來,社會的信息化進程發(fā)展的日益迅猛,各行各業(yè)的信息化管理工作顯得尤為重要[1-3],在提升單位的信息化管理工作過程中,管理信息系統(tǒng)軟件開發(fā)是信息化管理工作的一個重要環(huán)節(jié)。
隨著海量數(shù)據(jù)時代的不斷發(fā)展,信息化管理成為企事業(yè)單位的一項重要工作。飛行試驗是一項事務(wù)繁瑣的工作,傳統(tǒng)工作模式下,各項工作的統(tǒng)計耗費大量的人力物力,采用信息化管理工作模式,飛行試驗信息化管理系統(tǒng)在提高工作效率,實現(xiàn)無紙化辦公等方面起到了重要的作用,便于設(shè)備的整體調(diào)配及人力資源的合理分配,減少了手工操作的不便與繁瑣,使得設(shè)備及人員情況的記錄和統(tǒng)計變得十分簡單,提高了單位管理的信息化、智能化、科學(xué)化和正規(guī)化。
本文基于數(shù)據(jù)庫系統(tǒng)設(shè)計了一套飛行試驗信息化管理系統(tǒng),系統(tǒng)利用Delphi對SQL Sever數(shù)據(jù)庫應(yīng)用程序進行開發(fā)。該套飛行試驗信息化管理系統(tǒng)從提高管理工作的效率出發(fā),擺脫了過去由人用紙和筆進行的費時費力的繁重工作,利用成熟的計算機系統(tǒng)來實現(xiàn)管理工作的自動化。飛行試驗信息化管理系統(tǒng)在軟件結(jié)構(gòu)上包括用戶管理、人員管理、飛行進場統(tǒng)計、地面加班統(tǒng)計以及人員動向管理等,管理系統(tǒng)使用過程中對用戶的權(quán)限具有一定的限制,防止個別用戶對員工信息做出修改、刪除等操作,管理系統(tǒng)力求以方便快捷的途徑去管理手工操作的繁瑣數(shù)據(jù)。
基于信息化技術(shù)開發(fā)的飛行試驗信息化管理系統(tǒng)利用Delphi7.0對SQL Sever 2000數(shù)據(jù)庫應(yīng)用程序進行設(shè)計。Delphi的開發(fā)環(huán)境簡潔好用、易于掌握,是一種目前應(yīng)用廣泛的集成可視化應(yīng)用程序的開發(fā)環(huán)境,Delphi具有面向?qū)ο?、編程效率高、代碼質(zhì)量好等優(yōu)點,其具有的類庫可以實現(xiàn)程序的靈活設(shè)計進而避免Windows程序設(shè)計中那些繁雜、單調(diào)、重復(fù)的設(shè)計工作[4-6],Delphi具有功能強大的而又使用方便的數(shù)據(jù)庫支持能力,可以支持多種數(shù)據(jù)庫[7],因此在各種類型的可視化程序開發(fā)中獲得了廣泛應(yīng)用。
ADO(ActiveX Data Object)設(shè)計為一種極簡單的格式,通過ODBC的方法同數(shù)據(jù)庫接口相連。ADO是微軟公司推出的一套數(shù)據(jù)庫訪問規(guī)范,即Active 數(shù)據(jù)對象:實際是一種提供訪問各種數(shù)據(jù)類型的連接機制。ADO集中了RDO和DAO的優(yōu)點,可以通過簡單的編程實現(xiàn)和各種數(shù)據(jù)結(jié)構(gòu)進行連接。用戶可以使用任何一種ODBC數(shù)據(jù)源。SQL Server 2000在傳統(tǒng)數(shù)據(jù)庫的基礎(chǔ)上,吸收了許多新的功能以增加系統(tǒng)的運行性能,而且還使數(shù)據(jù)庫的管理工作更加輕松[8]。SQL Sever 2000可以使操作系統(tǒng)具有應(yīng)用程序數(shù)據(jù)庫,并被優(yōu)化支持未連接用戶或移動用戶。它也用于在單用戶機器上進行小型應(yīng)用程序的開發(fā),能夠很好的滿足我們的需要。
飛行試驗過程相關(guān)日常工作繁雜,信息統(tǒng)計工作量巨大,手工統(tǒng)計模式耗費人力、物力,手工模式的統(tǒng)計效率低下,鑒于此,設(shè)計了一套飛行試驗信息管理系統(tǒng),從而提高單位工作效率。程序開發(fā)使用Delphi開發(fā)平臺,后臺數(shù)據(jù)庫使用SQL Sever來建立數(shù)據(jù)庫,使用ADO工具來連接SQL Sever數(shù)據(jù)庫和Delphi軟件程序。采用面向?qū)ο笈c結(jié)構(gòu)優(yōu)化結(jié)合的方式進行數(shù)據(jù)庫設(shè)計。結(jié)合飛行試驗相關(guān)工作情況,飛行試驗信息化管理系統(tǒng)設(shè)計采用模塊化設(shè)計,分模塊設(shè)計方面主要包含系統(tǒng)管理、用戶管理、人員管理、飛行進場統(tǒng)計、地面加班統(tǒng)計以及人員動向管理等各個功能模塊組成。在提高程序利用率方面,采用基本功能的父類窗口設(shè)計與子類繼承的方式實現(xiàn)各個模塊的各項信息的增加、修改及刪除等功能。飛行試驗信息化管理系統(tǒng)從飛行試驗信息化管理的應(yīng)用出發(fā),根據(jù)用戶對該管理系統(tǒng)的不同操作需求,結(jié)合系統(tǒng)運行效率、安全性、可靠性、通用性等多方面考慮,完成不同用戶權(quán)限的設(shè)計,系統(tǒng)管理員與普通用戶設(shè)計具有不同的權(quán)限,分別進行不同權(quán)限級別的操作,普通用戶只能完成信息化系統(tǒng)數(shù)據(jù)庫相關(guān)信息的瀏覽和下載功能,系統(tǒng)管理員除了具有普通用戶的使用權(quán)限之外,還具有管理飛行試驗信息化管理系統(tǒng)數(shù)據(jù)庫的權(quán)限。人員管理、飛行進場統(tǒng)計、地面加班統(tǒng)計以及人員動向管理等各個功能模塊通過對系統(tǒng)相關(guān)數(shù)據(jù)庫進行查詢、綜合顯示、文件輸出以及信息的增加、修改、刪除等操作,實現(xiàn)飛行試驗信息化管理。
飛行試驗信息化管理系統(tǒng)完成的是飛行試驗過程中各項相關(guān)工作電子信息化管理,解決傳統(tǒng)工作模式所耗費的人力和物力,實現(xiàn)人力以及各類資源的合理利用,因此在實現(xiàn)單位信息化管理工作的同時提高飛行試驗工作效率,飛行試驗信息化管理系統(tǒng)主要由系統(tǒng)管理、用戶管理、人員管理、飛行進場統(tǒng)計、地面加班統(tǒng)計以及人員動向管理等功能模塊組成,擺脫過去由人用紙和筆進行的費時費力的繁重工作,利用飛行試驗信息化管理系統(tǒng)實現(xiàn)管理工作的自動化,管理系統(tǒng)針對各類人員設(shè)置不同的管理權(quán)限,既滿足工作信息的及時上傳、實時查詢等,也防止個別用戶對員工信息做出修改、刪除等操作。用戶管理模塊設(shè)置管理員和用戶的不同權(quán)限,進行不同權(quán)限級別的操作;人員管理模塊進行人員信息的錄入、更新及查詢操作;設(shè)備管理模塊進行設(shè)備信息的錄入、更新及查詢操作;飛行進場統(tǒng)計根據(jù)人員、飛機號等多重過濾條件進行信息錄入、更新及查詢;進場統(tǒng)計和加班統(tǒng)計根據(jù)人員、飛機號、工作內(nèi)容等過濾條件進行信息錄入、更新及查詢;人員信息管理還可以完成考勤信息管理工作。系統(tǒng)主要功能模塊框圖如圖1所示。
圖1 系統(tǒng)功能模塊框圖
飛行試驗信息化管理系統(tǒng)的主要功能模塊的數(shù)據(jù)庫管理通過部門信息表、人員信息表、進場信息表、加班信息表、設(shè)備信息表、人員動向表、權(quán)限表、用戶信息表、用戶權(quán)限關(guān)系表、登錄信息表等設(shè)計實現(xiàn)。各個數(shù)據(jù)庫表對飛行試驗信息化管理系統(tǒng)的各個功能模塊進行數(shù)據(jù)信息的定義,并通過數(shù)據(jù)庫表的關(guān)聯(lián)實現(xiàn)關(guān)系數(shù)據(jù)庫的操作及管理。以進場統(tǒng)計表為例,其數(shù)據(jù)定義如表1所示。
表1 進場統(tǒng)計表數(shù)據(jù)定義
如表1所示,進場統(tǒng)計表記錄了機號、試驗日期、試驗性質(zhì)等數(shù)據(jù)內(nèi)容。其中,機號記錄進場飛機的代號,并作為進場統(tǒng)計表的主鍵,與其它數(shù)據(jù)庫表相關(guān)聯(lián);試驗性質(zhì)記錄飛行或聯(lián)試的信息;遙測站記錄接收遙測數(shù)據(jù)的遙測站信息;實時系統(tǒng)記錄實時接收及處理PCM數(shù)據(jù)的實時系統(tǒng)信息;備注記錄飛行或聯(lián)試時的特殊情況。
數(shù)據(jù)庫管理系統(tǒng)負責(zé)完成信息化系統(tǒng)相關(guān)數(shù)據(jù)的管理和編輯功能,根據(jù)數(shù)據(jù)庫的體系結(jié)構(gòu),數(shù)據(jù)庫管理系統(tǒng)通常包含三部分內(nèi)容:數(shù)據(jù)庫系統(tǒng)相關(guān)文件部分、用戶操作界面部分以及數(shù)據(jù)訪問鏈路設(shè)計部分。數(shù)據(jù)庫系統(tǒng)設(shè)計過程中關(guān)鍵環(huán)節(jié)是數(shù)據(jù)庫的訪問和連接,目前,數(shù)據(jù)引擎(BDE)和動態(tài)數(shù)據(jù)對象(ADO)是Delphi提供并支持的兩種數(shù)據(jù)庫訪問連接方式。ADO是微軟開發(fā)的數(shù)據(jù)庫訪問技術(shù),由一組組件模型構(gòu)成,ADO技術(shù)應(yīng)用廣泛[9]。Delphi中的ADO技術(shù)是Borland公司基于微軟ADO數(shù)據(jù)庫連接引擎開發(fā)的一種數(shù)據(jù)連接方法,其優(yōu)勢在于當(dāng)使用到該數(shù)據(jù)庫應(yīng)用系統(tǒng)時,不需要對數(shù)據(jù)庫驅(qū)動打包[10]。同時,由于Delphi采用的是本地編譯器直接生成技術(shù),在設(shè)計數(shù)據(jù)庫管理軟件時執(zhí)行效率較高,因此在此選擇ADO數(shù)據(jù)庫連接方式。
采用ADO組件的數(shù)據(jù)庫連接方式如圖2所示。SQL Sever數(shù)據(jù)庫需通過ADO連接方式對數(shù)據(jù)進行訪問,經(jīng)由數(shù)據(jù)控制組件訪問數(shù)據(jù)庫,通過顯示組件進行查詢編輯。
圖2 ADO連接方式
2.4.1 系統(tǒng)管理
根據(jù)使用飛行試驗信息化管理系統(tǒng)的用戶角色不同,用戶分為兩種:系統(tǒng)管理員和普通用戶。不同的用戶具有不同權(quán)限,進行不同權(quán)限級別的操作,普通用戶可以在用戶注冊界面注冊加入,系統(tǒng)管理員只能手動添加。
普通用戶只能完成信息化系統(tǒng)數(shù)據(jù)庫相關(guān)信息的瀏覽和下載功能。系統(tǒng)管理員除了具有普通用戶的使用權(quán)限之外,還具有管理飛行試驗信息化管理系統(tǒng)數(shù)據(jù)庫的權(quán)限,系統(tǒng)管理員具有用戶管理的功能,可以針對不同的普通用戶對其使用權(quán)限進行規(guī)定和修改,系統(tǒng)管理員可以根據(jù)每位普通用戶的工作性質(zhì)的不同賦予其不同的使用權(quán)限,每位普通用戶可以具有不同數(shù)據(jù)庫信息范圍的查詢權(quán)限。系統(tǒng)管理員在完成用戶管理功能的同時可以完成信息系統(tǒng)各種相關(guān)信息的上傳存儲、修改以及刪除等操作。為了每個用戶的信息安全,系統(tǒng)管理為每個用戶賦予密碼修改的功能,每位用戶可以根據(jù)需要進行各自的登錄用戶名和密碼的設(shè)置。
2.4.2 人員信息管理
系統(tǒng)在各個分模塊設(shè)計上有相似之處,因此僅以人員信息管理模塊為例進行詳述,其它模塊僅做簡單介紹。人員信息模塊可以按照單位員工的工作證件號、員工姓名、員工年齡、員工性別、員工所屬單位、職稱信息、聯(lián)系方式等信息進行信息的編輯和查詢。管理員賬戶具有上述人員信息的添加、刪除、修改等權(quán)限,管理員及普通用戶利用上述員工信息中的任一條件可以進行人員信息的查詢,符合查詢條件的員工信息提取并羅列顯示出來,便于人員信息的查詢管理。人員信息管理模塊信息管理和信息查詢界面如圖3和圖4所示。
圖3 信息化管理系統(tǒng)人員信息管理界面
圖4 信息化管理系統(tǒng)人員信息查詢界面
為了提高程序利用率,在信息管理模塊首先設(shè)計實現(xiàn)具有信息管理基本功能的父類窗口,然后通過子類繼承的方式實現(xiàn)飛行試驗各項信息的增加、修改及刪除等功能。信息管理部分程序如下所示:
function AddDbData(frm: TfrmPBase): Boolean;
begin
frm.strState := 'N';
if mrOk = frm.ShowModal then
Result := True
else
Result := False;
end;
function ModifyDbData(frm: TfrmPBase; ds: TDataSet): Boolean;
begin
Result := False;
if ds.RecordCount >0 then begin
frm.strState := 'M';
if mrOk = frm.ShowModal then
Result := True;
end
else
Application.MessageBox('沒有可以修改的信息。', PChar(Application.Title),
MB_OK + MB_ICONINFORMATION);
end;
2.4.3 進場信息管理
進場信息管理模塊可以按照日期、正常工作日節(jié)假日、飛機號、飛機主管、值班人員等信息進行進場信息的查詢和管理。管理員賬戶具有上述進場信息的添加、刪除、修改等權(quán)限,管理員及普通賬戶利用上述進場信息中的任一條件可以進行進場信息的查詢,符合查詢條件的進場詳細信息提取并羅列顯示出來,便于日?,嵥榈倪M場信息的查詢管理。
2.4.4 地面加班信息管理
地面加班信息管理模塊可以按照日期、正常工作日節(jié)假日、加班人員、加班內(nèi)容等信息進行地面加班信息的查詢和管理。管理員賬戶具有上述地面加班信息的添加、刪除、修改等權(quán)限,管理員及普通賬戶利用上述地面加班信息中的任一條件可以進行地面加班信息的查詢,符合查詢條件的地面加班詳細信息提取并羅列顯示出來,便于地面加班信息的查詢管理。
2.4.5 設(shè)備信息管理
設(shè)備信息管理模塊可以按照設(shè)備名稱、型號、生產(chǎn)廠家、國資信息、設(shè)備責(zé)任人、放置地點等信息進行設(shè)備信息的查詢和管理。管理員賬戶具有上述設(shè)備信息的添加、刪除、修改等權(quán)限,管理員及普通賬戶利用上述設(shè)備信息中的任一條件可以進行設(shè)備信息的查詢,符合查詢條件的設(shè)備詳細信息提取并羅列顯示出來,便于設(shè)備信息的查詢管理。
2.4.6 人員動向管理
人員動向管理模塊可以按照日期、員工姓名、出差/在崗/休假、出差地點等信息進行人員動向信息的查詢和管理。管理員賬戶具有上述人員動向信息的添加、刪除、修改等權(quán)限,管理員及普通賬戶利用上述人員動向信息中的任一條件可以進行人員動向信息的查詢,符合查詢條件的人員動向詳細信息提取并羅列顯示出來,便于人員動向信息的查詢管理。
2.4.7 信息導(dǎo)出與打印
系統(tǒng)實現(xiàn)了飛行試驗信息化管理,利用數(shù)據(jù)庫管理繁雜的日常工作信息,系統(tǒng)支持數(shù)據(jù)庫信息的備份、信息導(dǎo)出以及信息打印功能。用戶可以輕松實現(xiàn)飛行試驗信息的報表生成,其內(nèi)容涵蓋全部查詢及統(tǒng)計的內(nèi)容。同時,打印功能可以完成各種查詢信息以及各種管理信息的打印。
為了飛行試驗過程中便于設(shè)備的整體調(diào)配及人力資源的合理分配,利用Delphi7.0開發(fā)環(huán)境和SQL Sever 2000數(shù)據(jù)庫設(shè)計了一套飛行試驗信息化管理系統(tǒng)。系統(tǒng)采用模塊化設(shè)計,從實際應(yīng)用出發(fā),根據(jù)用戶對該管理系統(tǒng)的不同操作需求,結(jié)合系統(tǒng)運行效率、安全性、可靠性、通用性等多方面考慮,完成不同用戶權(quán)限的設(shè)計,通過對系統(tǒng)相關(guān)數(shù)據(jù)庫進行查詢、綜合顯示、文件輸出以及信息的增加、修改、刪除等操作,實現(xiàn)了飛行試驗信息化管理。