彭 侃
(重慶市云陽(yáng)縣人民醫(yī)院,重慶云陽(yáng)404500)
基于Visual Basic的醫(yī)院設(shè)備管理系統(tǒng)方案設(shè)計(jì)
彭 侃
(重慶市云陽(yáng)縣人民醫(yī)院,重慶云陽(yáng)404500)
醫(yī)院設(shè)備管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面,對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。
經(jīng)過(guò)分析,使用微軟公司的Visual Basic6.0開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,尤其是數(shù)據(jù)窗口這一方便簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,首先可使我們?cè)诙虝r(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求分析,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。
醫(yī)院設(shè)備管理;VB6.0;數(shù)據(jù)庫(kù)
隨著現(xiàn)代醫(yī)學(xué)科學(xué)技術(shù)的發(fā)展,醫(yī)院設(shè)備管理已步入現(xiàn)代化管理的進(jìn)程,計(jì)算機(jī)在醫(yī)院管理中的應(yīng)用也相當(dāng)普遍。因此,加強(qiáng)醫(yī)療設(shè)備的微機(jī)化管理,充分發(fā)揮衛(wèi)生資源的合理利用,已成醫(yī)院管理中急需解決的問(wèn)題。所以開(kāi)發(fā)研究一套適合自身醫(yī)院實(shí)際情況的設(shè)備管理系統(tǒng)很有必要,在下面就以醫(yī)院設(shè)備管理系統(tǒng)為例,談?wù)勯_(kāi)發(fā)過(guò)程和所涉及到的問(wèn)題和解決方法。
1.1 VB簡(jiǎn)介
VB是微軟公司推出的一個(gè)快速可視化程序開(kāi)發(fā)工具軟件,借助微軟在操作系統(tǒng)和辦公軟件的壟斷地位,VB在短短的幾年時(shí)間內(nèi)就風(fēng)靡全球成為一個(gè)功能強(qiáng)大的軟件,主要表現(xiàn)在:所見(jiàn)即所得的界面設(shè)計(jì),基于對(duì)象的設(shè)計(jì)方法,極短的軟件開(kāi)發(fā)周期,較易維護(hù)的生成代碼。
1.2 VB語(yǔ)言的基本特點(diǎn)及VB應(yīng)用程序的基本特點(diǎn)
VB程序語(yǔ)言具有許多優(yōu)秀的特性,用其設(shè)計(jì)應(yīng)用程序時(shí)有兩個(gè)基本特點(diǎn):可視化設(shè)計(jì)和事件驅(qū)動(dòng)編程。
1.3 VB作為開(kāi)發(fā)語(yǔ)言的優(yōu)點(diǎn)
除了VB之外,當(dāng)前能夠編制Windows應(yīng)用程序的可視化編程工具還有很多,所針對(duì)的編程領(lǐng)域也各有側(cè)重,但是VB簡(jiǎn)單易學(xué),變量定義不太嚴(yán)密,對(duì)于非專業(yè)程序員而言功能足夠強(qiáng)大,同Visual Basic一樣也支持網(wǎng)絡(luò)編程和數(shù)據(jù)庫(kù)編程。
1.4 VB6.0應(yīng)用的基本開(kāi)發(fā)方法
1)交互式開(kāi)發(fā)。傳統(tǒng)的應(yīng)用程序開(kāi)發(fā)過(guò)程可以分為三個(gè)明顯的步驟:編碼、編譯和測(cè)試。但是VB與傳統(tǒng)的語(yǔ)言不同,它使用交互式方法開(kāi)發(fā)應(yīng)用程序,使三個(gè)步驟之間不再有明顯的界限。
由于VB的交互特性,因此在開(kāi)發(fā)應(yīng)用程序時(shí),系統(tǒng)頻繁地運(yùn)行著應(yīng)用程序。通過(guò)這種方式,代碼運(yùn)行的效果可以在開(kāi)發(fā)時(shí)進(jìn)行測(cè)試,而不必等到編譯完成以后。
2)事件驅(qū)動(dòng)應(yīng)用程序的工作方式。事件是窗體或控件對(duì)象識(shí)別的動(dòng)作。在響應(yīng)事件時(shí),事件驅(qū)動(dòng)應(yīng)用程序執(zhí)行VB代碼。VB的每一個(gè)窗體和控件對(duì)象都有一個(gè)預(yù)定義的事件集。如果其中有一個(gè)事件發(fā)生,并且在關(guān)聯(lián)的事件過(guò)程中存在代碼,則VB就會(huì)調(diào)用該代碼。
對(duì)象所識(shí)別的事件類型多種多樣,但多數(shù)事件類型是大多數(shù)控件所共有的。例如:大多數(shù)對(duì)象都能識(shí)別click事件,如果單擊窗體,則執(zhí)行窗體的單擊事件過(guò)程中的代碼;如果單擊命令按鈕,則執(zhí)行命令按鈕的click事件過(guò)程中的代碼。每種情況中的實(shí)際代碼幾乎完全不一樣。
3)創(chuàng)建VB應(yīng)用程序的三個(gè)步驟。
(1)創(chuàng)建應(yīng)用程序界面;(2)設(shè)置屬性;(3)編寫代碼。
2.1 醫(yī)療設(shè)備微機(jī)化管理的準(zhǔn)備工作
首先對(duì)醫(yī)院現(xiàn)有的所有醫(yī)療設(shè)備(包括專用設(shè)備、一般設(shè)備和衛(wèi)生材料)進(jìn)行一次全面普查,將各科室的醫(yī)療儀器和設(shè)備的產(chǎn)地、價(jià)格、型號(hào)、出廠日期、使用情況等列出明細(xì)表,在此基礎(chǔ)上,對(duì)設(shè)備進(jìn)行分類和編號(hào)。
其次,對(duì)各種低值易耗品及衛(wèi)生材料進(jìn)行科學(xué)編碼,編碼宗旨是:既要科學(xué)又易用,根據(jù)醫(yī)院實(shí)際情況,自行編制儀器設(shè)備和衛(wèi)生材料編碼庫(kù)。
2.2 醫(yī)院醫(yī)療設(shè)備管理系統(tǒng)的組成
倉(cāng)庫(kù)物資管理系統(tǒng):對(duì)全院的各種設(shè)備、衛(wèi)生材料的采購(gòu)、入庫(kù)、出庫(kù)、轉(zhuǎn)讓、退貨、登帳等業(yè)務(wù)進(jìn)行統(tǒng)一管理,對(duì)低值易耗品進(jìn)行建帳、調(diào)撥、報(bào)廢等帳目管理,對(duì)入庫(kù)的各類物質(zhì)都能進(jìn)行各種統(tǒng)計(jì)、查詢、打印工作。
固定資產(chǎn)管理系統(tǒng):對(duì)固定資產(chǎn)進(jìn)行入庫(kù)、出庫(kù)、登帳、調(diào)撥、標(biāo)簽、報(bào)廢、計(jì)提折舊、期末會(huì)計(jì)報(bào)表、設(shè)備使用效益分析等業(yè)務(wù)管理,進(jìn)行各種統(tǒng)計(jì)、查詢、打印工作。
2.3 編程環(huán)境的選擇
微軟公司的Visual Basic6.0是windows應(yīng)用程序開(kāi)發(fā)工具,是目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_(kāi)發(fā)工具。Visual Basic6.0提供了大量的控件,這些控件可用于設(shè)計(jì)界面和實(shí)現(xiàn)各種功能,減少了編程人員的工作量,也簡(jiǎn)化了界面的設(shè)計(jì)過(guò)程,從而有效的提高了應(yīng)用程序的運(yùn)行效率和可靠性。故而,實(shí)現(xiàn)本系統(tǒng)VB是一個(gè)相對(duì)較好的選擇。
2.4 關(guān)系型數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
Access2000本身就是關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)工具,數(shù)據(jù)庫(kù)能匯集各種信息以供查詢、存儲(chǔ)和檢索。Access的優(yōu)點(diǎn)在于它以使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一項(xiàng)類似于Excel的電子表格,能使數(shù)據(jù)庫(kù)一目了然。另外,Access允許創(chuàng)建自定義報(bào)表用于打印或輸出數(shù)據(jù)庫(kù)中的信息。Access提供了數(shù)據(jù)存儲(chǔ)庫(kù),可以使用桌面數(shù)據(jù)庫(kù)文件把數(shù)據(jù)庫(kù)文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫(kù)。Access是一種關(guān)系數(shù)據(jù)庫(kù)工具,關(guān)系數(shù)據(jù)庫(kù)是已開(kāi)發(fā)的最通用的數(shù)據(jù)庫(kù)之一。如上所述,Access作為關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)具備了許多優(yōu)點(diǎn),可以在一個(gè)數(shù)據(jù)包中同時(shí)擁有桌面數(shù)據(jù)庫(kù)的便利和關(guān)系數(shù)據(jù)庫(kù)的強(qiáng)大功能。
2.5 二者的結(jié)合
微軟的JET數(shù)據(jù)庫(kù)引擎提供了與數(shù)據(jù)庫(kù)打交道的途徑,我們是通過(guò)它以及Visual Basic來(lái)訪問(wèn)數(shù)據(jù)庫(kù)并對(duì)其進(jìn)行各種操作。Visual Basic,Access以及其他微軟產(chǎn)品都是通過(guò)共用JET數(shù)據(jù)庫(kù)引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。
DATA控件的數(shù)據(jù)中的信息與將信息顯示給用戶看的Visual Basic程序之間架起了一座橋梁。我們可以設(shè)置DATA控件的各個(gè)屬性,告訴它要調(diào)用哪個(gè)數(shù)據(jù)庫(kù)的某個(gè)部份,缺省的情況下,DATA控件根據(jù)數(shù)據(jù)庫(kù)中的一個(gè)或多個(gè)數(shù)據(jù)表建立一個(gè)dynaset-type(動(dòng)態(tài)集合)類型的記錄集合。一個(gè)記錄集合是動(dòng)態(tài)的也就意味著當(dāng)原來(lái)的數(shù)據(jù)表中的內(nèi)容改變了以后,該記錄集合中的記錄也會(huì)隨之改變。DATA控件還提供了用來(lái)瀏覽不同記錄的各種跳轉(zhuǎn)按鈕。將DATA控件放置在窗體中之后我們還必須在該控件與要處理的數(shù)據(jù)庫(kù)之間建立聯(lián)系。
2.6 醫(yī)療設(shè)備管理系統(tǒng)設(shè)計(jì)分析
根據(jù)實(shí)際情況,我們使用原型法,即以少量代價(jià)快速地構(gòu)造一個(gè)可執(zhí)行的軟件系統(tǒng)模型,使用戶和開(kāi)發(fā)人員可以較快地確定需求,然后采用循環(huán)進(jìn)化的開(kāi)發(fā)方式,對(duì)系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有性質(zhì)全部滿足,此時(shí)模塊的發(fā)展也最終成熟。
3.1 數(shù)據(jù)庫(kù)的概念
數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫(kù)的作用在于組織和表達(dá)信息,簡(jiǎn)而言之,數(shù)據(jù)庫(kù)就是信息的集合。計(jì)算機(jī)的數(shù)據(jù)庫(kù)可以分為兩類:非關(guān)系數(shù)據(jù)庫(kù)(flat-file)和關(guān)系數(shù)據(jù)庫(kù)(relational)。關(guān)系數(shù)據(jù)庫(kù)中包含了多個(gè)數(shù)據(jù)表的信息,數(shù)據(jù)庫(kù)包含有部分的術(shù)語(yǔ),如記錄、域等。
3.2 新建一個(gè)數(shù)據(jù)庫(kù)
創(chuàng)建任何一個(gè)數(shù)據(jù)庫(kù)的第一步是仔細(xì)的規(guī)劃數(shù)據(jù)庫(kù),設(shè)計(jì)必須是靈活的、有邏輯的。創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)結(jié)構(gòu)的過(guò)程被認(rèn)為是數(shù)據(jù)模型設(shè)計(jì)。(1)標(biāo)識(shí)需要的數(shù)據(jù);(2)收集被標(biāo)識(shí)的字段到表中;(3)標(biāo)識(shí)主關(guān)鍵字字段;(4)繪制一個(gè)簡(jiǎn)單的數(shù)據(jù)圖表;(5)規(guī)范數(shù)據(jù);(6)標(biāo)識(shí)指定字段的信息;(7)創(chuàng)建物理表。
3.3 修改已建的數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)的修改分為添加、編輯和刪除記錄。這三種操作均可由Visual Basic 創(chuàng)建的程序來(lái)完成。
3.4 實(shí)現(xiàn)數(shù)據(jù)庫(kù)之間的聯(lián)系
數(shù)據(jù)庫(kù)之間的關(guān)系指明兩個(gè)庫(kù)之間共享一個(gè)共同的關(guān)鍵字值。一個(gè)連接是指一種虛擬的表,這種表是在當(dāng)用戶要求從相互關(guān)聯(lián)的各種不同的表中獲取信息時(shí)建立的,關(guān)鍵字段用于在相互連接的不同表中查找匹配的記錄。一個(gè)更高級(jí)的連接形式稱為自連接,這種連接是指一個(gè)表被連接到它自己的一個(gè)字段,或在不同的記錄中由重復(fù)數(shù)據(jù)的字段組合。數(shù)據(jù)庫(kù)中有三種不同類型的關(guān)鍵字:主關(guān)鍵字、組合關(guān)鍵字和外關(guān)鍵字。在表中使用的關(guān)鍵字類型用于描述庫(kù)表示什么以及在數(shù)據(jù)庫(kù)中如何與其它的庫(kù)建立關(guān)系。
4.1 系統(tǒng)功能
(1)可以進(jìn)行醫(yī)療設(shè)備登入;(2)可以添加一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目;(3)可以刪除一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目;(4)可以修改一個(gè)數(shù)據(jù)庫(kù)項(xiàng)目;(5)可以查詢,如選擇一個(gè)設(shè)備的記錄,則顯示該設(shè)備的編號(hào)、名稱、所屬科室、存放地點(diǎn)、型號(hào)、是否大型、使用時(shí)間等信息;(6)為進(jìn)行數(shù)據(jù)的安全保密,新用戶進(jìn)入本系統(tǒng)要注冊(cè),并且本系統(tǒng)提供了“注銷”功能,系統(tǒng)管理員可刪除、更改其它用戶,限制其它用戶的操作,且可以添加用戶,修改用戶有關(guān)信息等;(7)具有錄入設(shè)備效益狀況的功能。
4.2 系統(tǒng)邏輯模型的提出
系統(tǒng)分析主要成果是系統(tǒng)的邏輯模型。本系統(tǒng)的邏輯模型主要是以系統(tǒng)的數(shù)據(jù)字典為主要描述工具。即在對(duì)設(shè)備效益分析方式和業(yè)務(wù)流程進(jìn)行認(rèn)真分析和研究的基礎(chǔ)上,排除現(xiàn)有組織機(jī)構(gòu)和業(yè)務(wù)分工所造成的信息障礙。完全從業(yè)務(wù)管理功能和管理對(duì)象出發(fā),按照信息系統(tǒng)中已有的數(shù)據(jù)流和數(shù)據(jù)結(jié)構(gòu)來(lái)規(guī)劃系統(tǒng)的概貌。
(1)數(shù)據(jù)流圖(簡(jiǎn)稱為DFD)。數(shù)據(jù)流圖是組織中信息運(yùn)動(dòng)的抽象。是在調(diào)研的基礎(chǔ)上,從系統(tǒng)的科學(xué)性、管理的合理性、實(shí)際運(yùn)動(dòng)的可行性角度出發(fā)。將信息和管理功能彼此之間的聯(lián)系自頂向下,逐層分解,從邏輯上精確地描述系統(tǒng)應(yīng)具有的數(shù)據(jù)功能、數(shù)據(jù)輸入、數(shù)據(jù)輸出、數(shù)據(jù)存儲(chǔ)及數(shù)據(jù)來(lái)源和去向(外部實(shí)體)等項(xiàng)目。
首先,分析醫(yī)療設(shè)備管理的總體情況 ,劃分系統(tǒng)邊界,識(shí)別系統(tǒng)的數(shù)據(jù)來(lái)源和去處,確定外部實(shí)體,得出系統(tǒng)的頂層數(shù)據(jù)流程圖;
然后劃分出幾個(gè)主要的信息管理功能,并明確各功能之間的聯(lián)系,繪制出數(shù)據(jù)流程圖。
(2)數(shù)據(jù)字典(簡(jiǎn)稱為DD)。繪制DFD,只是對(duì)數(shù)據(jù)處理的和彼此之間的聯(lián)系進(jìn)行了說(shuō)明。為進(jìn)一步明確數(shù)據(jù)的詳細(xì)內(nèi)容和數(shù)據(jù)加工過(guò)程,應(yīng)將數(shù)據(jù)流圖中的全部數(shù)據(jù)流及其組成部分的數(shù)據(jù)元素,數(shù)據(jù)存儲(chǔ),數(shù)據(jù)加工,通過(guò)數(shù)據(jù)字典描述清楚,以便于此后系統(tǒng)設(shè)計(jì)的進(jìn)行。這就需要開(kāi)發(fā)人員編寫詳細(xì)的數(shù)據(jù)字典,來(lái)描述系統(tǒng)開(kāi)發(fā)過(guò)程的細(xì)節(jié)。
下面列出本系統(tǒng)中的數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、加工處理和數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)字典。
數(shù)據(jù)項(xiàng)的DD表列舉如下:
設(shè)備號(hào)碼的數(shù)據(jù)字典如表1所示。
表1
設(shè)備名稱的數(shù)據(jù)字典如表2所示。
表2
其他數(shù)據(jù)項(xiàng)的數(shù)據(jù)字典略。
5.1 界面的實(shí)現(xiàn)
5.1.1 用戶界面的實(shí)現(xiàn):有用戶登錄后,則可進(jìn)入主界面。
5.1.2 主界面:主界面應(yīng)包括項(xiàng)目、入庫(kù)、出庫(kù)及報(bào)表。
(1)項(xiàng)目菜單:
包括“員工管理”、“供應(yīng)管理”、“科室管理”、“材料分類”、“大型設(shè)備管理”五個(gè)子菜單項(xiàng)。各子菜菜單項(xiàng)的功能及含義介紹如下:
①“員工管理”,單擊此菜單項(xiàng),你可以成為新用戶,只有登錄進(jìn)入本系統(tǒng)才能進(jìn)行系統(tǒng)員管理(添加、刪除用戶)和進(jìn)行用戶管理。
②單擊“供應(yīng)管理”菜單項(xiàng),彈出記表單,用戶填入相應(yīng)的信息(如名稱、地址)進(jìn)行增加和刪除。
③“科室管理”即對(duì)科室名稱、聯(lián)系人等進(jìn)行增加和刪除。
④“材料分類”對(duì)各類材料進(jìn)行編號(hào)和名稱分類。
⑤“大型設(shè)備管理”對(duì)各種大型設(shè)備名稱分類進(jìn)行管理。
(2)“入庫(kù)”菜單
單擊入庫(kù)菜單,則對(duì)入庫(kù)設(shè)備進(jìn)行分類,命名及庫(kù)存管理。
(3)“出庫(kù)”菜單
單擊出庫(kù)菜單,則對(duì)出庫(kù)設(shè)備進(jìn)行分類,命名及庫(kù)存管理。
(4)報(bào)表
對(duì)設(shè)備出、入庫(kù)按要求輸出。
5.2 與VB的連接
Visual Basic是提供了與底層數(shù)據(jù)庫(kù)系統(tǒng)緊密的連接。Visual Basic支持不同的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)并充分發(fā)揮每一個(gè)數(shù)據(jù)庫(kù)的特長(zhǎng)。生成獨(dú)立應(yīng)用或脫離服務(wù)器運(yùn)行的服務(wù)以上的應(yīng)用,Visual Basic連接數(shù)據(jù)庫(kù)的方式有兩種:
(1)通過(guò)使用Visual Basic的DATA控件。
(2)通過(guò)使用由Visual Basic提供的專用的直接與數(shù)據(jù)庫(kù)相連的接口。
[1]《Visual Basic程序設(shè)計(jì)》清華大學(xué)出版2002年7月第1版 李大友主編
[2]《Visual Basic開(kāi)發(fā)人員指南》機(jī)械工業(yè)出版社1999年1月Ericbrierley主編
[3]《Visual Basic程序設(shè)計(jì)》中央電大出版2000年12月第1版 陳明主編
[4]《Visual Basic6.0實(shí)效編程百例》人民郵電出版社2002年7月 劉韜、駱娟主編
[5]《數(shù)據(jù)庫(kù)系統(tǒng)概論(第二版)》高等教育出版社2001.4薩師煊 王珊主編
2013-11-27
TH772+.2
B
1002-2376(2014)04-0024-04