某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)有源程序代碼(可編輯)_第1頁
某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)有源程序代碼(可編輯)_第2頁
某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)有源程序代碼(可編輯)_第3頁
某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)有源程序代碼(可編輯)_第4頁
某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)有源程序代碼(可編輯)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā) ( 有源程序代碼 )(可編輯)某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā) ( 有源程序代碼)源程序代碼等全套設(shè)計聯(lián)系 174320523 各專業(yè)都有分類號:TP315 U D C:D10621-408-2007 5898-0密 級: 公 開 編 號:2003032074成都信息工程學院學位論文某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)論文作者姓名 : 張一蘭申請學位專業(yè) : 網(wǎng)絡(luò)工程申請學位類別 : 工學學士指導(dǎo)教師姓名 ( 職稱): 杜小丹 ( 副教授)論文提交日期 : 2007 年 06 月 10 日某小型醫(yī)院信息管理系統(tǒng)的設(shè)計與開發(fā)摘要本文所介紹的小型醫(yī)院信息管理系統(tǒng)

2、旨在改善某小型醫(yī)院的信息管理 , 改變醫(yī) 院的信息處理基本還停留在手工方式的狀況 ,降低勞動強度 ,提高工作效率。本系統(tǒng) 不僅適用于醫(yī)院的行政管理業(yè)務(wù) , 也適用于具體的就診事務(wù)業(yè)務(wù)。本系統(tǒng)可以使醫(yī) 務(wù)人員空出更多的精力和時間服務(wù)于病人 , 同時保證病人和醫(yī)院的經(jīng)濟利益 ,從而使 醫(yī)院能夠以少的投入獲得更好的社會效益與經(jīng)濟效益。本系統(tǒng)是利用 PowerBuilder 并結(jié)合醫(yī)院病人管理制度 , 嚴格按照軟件生命周期來設(shè)計的一個信息管理系統(tǒng)。實現(xiàn)了一個包括就診管理、模板處理、數(shù)統(tǒng)計等模塊在內(nèi)的小型醫(yī)院信息管理系統(tǒng) , 實現(xiàn)不同員工登錄、病人掛號就 醫(yī)、病人信息查詢、醫(yī)生出具處理處方及劃價、門診收

3、費與統(tǒng)計等功能。本文簡要 介紹了醫(yī)院管理系統(tǒng)的項目背景和意義 , 著重闡述了該系統(tǒng)的開發(fā)實現(xiàn)過程 ,從系 統(tǒng)目標, 需求分析、總體設(shè)計、詳細設(shè)計、到系統(tǒng)測試等各個環(huán)節(jié)都進行了詳 細的分析和描述。關(guān)鍵詞 : 數(shù)據(jù)庫 ;PowerBuilder; 就診The Design and Implementation of a Small Scale Hospital Information Management SystemAbstractThe small scale hospital information management system is designed for improving th

4、e information management of small hospital, reducing the labor intensity and enhancing working efficiency. This system can support the administration of the hospital and manage the business. In addition, it can help facilitate the patient, and bring social and economic interest to the hospital This

5、system uses PowerBuilder as developing language ,which is designed according to software life cycle. The system can implement the patient's registration before his going tosee a doctor, doctor 's processing prescription and management of expense. The thesis introduces the system's projec

6、t background andsignificance briefly, elaborates the system ' s implementation process.It alsoanalyses and describes all the stages of the system, including feasibilitystudy, demand analysis, outline design, detailed design and system testKey words: database; PowerBuilder; prescription目錄論文總頁數(shù) :3

7、0 頁1 引言 11.1 課題背景 11.2 國內(nèi)外研究現(xiàn)狀 1 1.3 本課題研究的意義 1 2 關(guān)鍵技術(shù)介紹 12.1 開發(fā)工具及運行環(huán)境 1 2.1.1 總體開發(fā)工具及環(huán)境 1 2.1.2 開發(fā)工具簡 介 12.2 系統(tǒng)需求分析 22.3 系統(tǒng)功能結(jié)構(gòu)設(shè)計 3 2.4 數(shù)據(jù)庫設(shè)計與實現(xiàn) 4 3 本系統(tǒng)功能模塊設(shè)計與 實現(xiàn) 7 3.1 應(yīng)用程序?qū)ο笤O(shè)計 7 3.2 職工登錄界面 83.3 主界面 93.4 掛號系統(tǒng)模塊 12 3.5 就診管理模塊 153.6 模板管理模塊 183.7 數(shù)據(jù)管理模塊 193.8 報表模塊 224 關(guān)鍵功能點的測試 234.1 登錄模塊測試 234.2 用戶密

8、碼修改功能點測試 244.3 病人費用報表功能測試 26結(jié) 論 27參考文獻 28致 謝 29聲 明 30引言課題背景隨著科學的不斷進步 , 計算機應(yīng)用已經(jīng)遍布整個社會的每個角落。人們的身體 健康也在不斷受到重視。因此 , 醫(yī)院進行現(xiàn)代化管理就變得尤為重要。目前社會正 處于健保發(fā)展方興未艾的時代 , 各醫(yī)療院所莫不兢兢業(yè)業(yè)地改善本身的體制或管理 方式, 以因應(yīng)健保越來越嚴格的規(guī)范。小型醫(yī)院信息管理系統(tǒng)是適應(yīng)時代發(fā)展的需 要, 提高管理的效率而開發(fā)設(shè)計的。國內(nèi)外研究現(xiàn)狀一個完整的醫(yī)院信息管理系統(tǒng)應(yīng)該既包括醫(yī)院管理信息系統(tǒng) , 又包括臨床醫(yī)療 信息系統(tǒng) , 國外研究機構(gòu)在力求實現(xiàn)醫(yī)院信息管理系統(tǒng)的

9、完整性。臨床信息管理系 統(tǒng)在數(shù)據(jù)處理的實時性要求、相應(yīng)速度、安全保密等方面一般要比管理信息系統(tǒng)有更苛刻的要求。而醫(yī)院管理信息系統(tǒng)的計算機技術(shù)較為單純和簡單 也由于醫(yī)院管理信息系統(tǒng)以處理文字和數(shù)字類數(shù)據(jù)為主 , 較少設(shè)計聲音、圖象、多 媒體數(shù)據(jù)的動態(tài)傳遞等復(fù)雜要求 , 實現(xiàn)起來容易的多。本課題研究的意義本系統(tǒng)通過對病人信息管理系統(tǒng)方案的設(shè)計和實施 , 提出一種對病人在就診過 程中產(chǎn)生的信息進行數(shù)字化管理的技術(shù) ,為門診建立起信息高速公路 , 促使醫(yī)院門診 逐步形成方便、科學、合理的管理模式。從根本上改變傳統(tǒng)的依靠文件等信息的傳 遞方式,實現(xiàn)無紙化辦公 ,簡化就診手續(xù) ,加快信息流通速度 ,提高治

10、療效率 ,基本實 現(xiàn)醫(yī)院系統(tǒng)的數(shù)字化管理。同時 ,本系統(tǒng)對病人既往病史以及用藥記錄存檔 , 既便于 醫(yī)生更加準確的對當前病人的診斷 , 同時也有利于醫(yī)生對各種病例進行分析研究。 病歷模板的套餐制更具靈活性。關(guān)鍵技術(shù)介紹開發(fā)工具及運行環(huán)境總體開發(fā)工具及環(huán)境本系統(tǒng)采用的軟件開發(fā)工具及環(huán)境如下 :操作系統(tǒng) :WINDOWSXP編程工具 :PowerBuilder9.0數(shù)據(jù)庫 :ACCESS開發(fā)工具簡介PowerBuilder 是一個圖形化的應(yīng)用程序開發(fā)環(huán)境。使用 PowerBuilder 開發(fā)的 應(yīng)用軟件由窗口構(gòu)成 , 窗口中不僅可以包含按鈕、下拉列表框及單選按紐等標準的 Windows控件,還可以

11、有PowerBuilder提供的特殊控件。這些特殊控件可以使應(yīng)用軟件更容易使用 , 使應(yīng)用軟件的開發(fā)效率更高。例如, 數(shù)據(jù)窗口就是 PowerBuilder 提供的一個集成度很高的控件 , 使用該控件 可以很方便地從數(shù)據(jù)庫中提取數(shù)據(jù) , 很簡單地檢索數(shù)據(jù) , 提供圖形化的數(shù)據(jù)顯示方式 創(chuàng)建統(tǒng)計功能非常強大的數(shù)據(jù)統(tǒng)計表。由于數(shù)據(jù)窗口對數(shù)據(jù)的操作是通過事務(wù)進行 的,所以對數(shù)據(jù)的操作有很強的可靠性。這些都為開發(fā)功能強大的數(shù)據(jù)庫應(yīng)用軟件 提供了可靠的保證。商業(yè)化的軟件開發(fā)要求有很好的移植性。 PowerBuilder 既可以跨平臺開發(fā) , 也 可以發(fā)行跨平臺軟件。例如,在Windows 95下開發(fā)的程

12、序,可以不修改源程序而形 成UNIX下的執(zhí)行文件或Macintosh下的執(zhí)行文件。在開發(fā)小組中,不同成員可以使 用不同的開發(fā)環(huán)境 , 但由于 PowerBuilder 的支持 , 在不同的開發(fā)環(huán)境下看到的共享PowerBuilder 對象是相同的 , 所以仍可以同時開發(fā)同一個應(yīng)用程序。隨著軟件技術(shù)的不斷發(fā)展 ,PowerBuilder 9.0 及時地強化了開發(fā)功能 , 并提供了 一些配套的開發(fā)工具 , 成為一種易于使用的、可伸縮的并經(jīng)實踐證明的快速集成開 發(fā)環(huán)境。它在給用戶提供一條轉(zhuǎn)移到下一代平臺的途徑的同時 , 使用戶仍能夠保護 和擴展現(xiàn)有的技術(shù)和應(yīng)用上的投資。系統(tǒng)需求分析病人在就診過程中

13、, 基本的業(yè)務(wù)流程如圖 1 所示 :圖1 業(yè)務(wù)流程圖通過對病人就診流程及管理的調(diào)查和了解 , 初步確定了該系統(tǒng)的基本需求情況 : 在病人就診之前 ,必須進行掛號 ,包括病人的最基本信息 ,掛號費用 ,預(yù)存 費等。在病人進行掛號的同時 , 可以自動為病人分配病歷號 , 作為病人在就診過程中的 唯一標識。在病人就診時 , 醫(yī)生可以對病人基本信息包括簡要病史等等進行登記。 對病人每次就醫(yī)的主訴 ,病歷,處方進行輸入 ,并可以進行查詢和維護。 各種化驗檢查信息的輸入、查詢和維護 , 并可以進行異常提醒。 對病人的預(yù)付款進行管理 , 并且當預(yù)付金額不夠時可以提醒補交預(yù)付款。 對病人就診過程中的各種費用進

14、行管理??梢源蛴〔∪祟A(yù)付款單據(jù)和費用憑單。醫(yī)生可以查詢病人治療情況、化驗檢查結(jié)果 , 以便跟蹤病人病情發(fā)展情況 , 同時 也有助于醫(yī)生對各種病例進行分析研究。系統(tǒng)功能結(jié)構(gòu)設(shè)計本系統(tǒng)劃分為 7個功能模塊 ,系統(tǒng)功能模塊圖如圖 2所示。圖2 系統(tǒng)功能模塊各模塊如下 :員工管理 :主要包括員工登陸 ,修改密碼 ,判別用戶級別功能。病人管理 : 主要包括病人的基本信息登記。主要包括對病人基本信息的錄入、查詢和維護等操作。病人基本信息的錄入窗 口可以從就診窗口進入 , 系統(tǒng)可以記憶當前就診病人病歷號以及當前錄入員的姓 名。就診管理 :主要包括對病人此次就診病情的錄入 , 過往病史的查詢及檢查和化驗 結(jié)果

15、進行錄入。模板管理 : 主要醫(yī)生針對各種典型病種所開具的主訴、病歷、處方錄入、查 詢?;灆z查管理 : 主要包括對病人每次所做化驗和檢查的結(jié)果進行錄入、查詢和 維護。費用管理 : 主要包括預(yù)付款管理和費用管理。預(yù)付款管理 : 主要包括對預(yù)付金額進行錄入、查詢和維護等操作。并且可以根 據(jù)支出情況進行費用統(tǒng)計、查詢余額和缺錢警示。費用支出管理 : 主要包括對病人藥費、檢查、化驗等支出進行錄入、查詢和維 護等操作。報表打印 :根據(jù)需要生成各種報表 , 并且打印出來。數(shù)據(jù)庫設(shè)計與實現(xiàn)在仔細調(diào)查醫(yī)院就診管理過程的基礎(chǔ)上 ,得到系統(tǒng)所要處理的數(shù)據(jù)流程圖 , 如圖 3 所示。圖3 數(shù)據(jù)流圖本系統(tǒng)根據(jù)上面的設(shè)

16、計規(guī)劃出的實體有 4 個: 病人、醫(yī)生、化驗檢查員、藥品。下面為本系統(tǒng)實體之間關(guān)系的E-R圖,如圖4所示。圖4實體關(guān)系E-R圖根據(jù)以上的分析設(shè)計得到實際數(shù)據(jù)庫模型。數(shù)據(jù)庫設(shè)計如下 :病人基本情況表 ghdj: 就診號 (jzid) 、病歷號 blh, 姓名 xm, 身份證號 sfzh, 性 別 xb, 出生日期 sr, 婚否 ?hf, 地址 dz, 電話 dh, 日期 ryrq, 科別 kb, 主訴zs,現(xiàn)病史xbs,病歷(bl),處方cf,醫(yī)囑yz,醫(yī)生ys。主碼是就診號jzid。此表字段用來保存病人的相關(guān)詳細信息 , 包括病人基本信息和病人在醫(yī)院就診相關(guān)信息。表 1 ghdj字段名 數(shù)據(jù)類

17、型 字段大小 必填字段jzid 文本 14 是blh 文本 8 是xm 文本 20 否sfzh 數(shù)字 小數(shù) 否 xb 文本 4 否sr 日期/時間 短日期 否 hf 文本 4 否dz 文本 100 否dh 文本 15 否ryrq 日期/時間 短日期 否 kb 文本 10 否zs 文本 200 否xbs 文本 200 否bl 文本 200 否cf 文本 200 否yz 文本 200 否ygh 文本 5 否掛號表ghb:流水號id,病歷號blh,日期rq,時間sj,掛號費ghf,金額je。主碼 是流水號 id 。此表字段用來記錄病人在醫(yī)院掛號就醫(yī)時產(chǎn)生的相關(guān)數(shù)據(jù)。表 2 ghb字段名 數(shù)據(jù)類型 字

18、段大小 必填字段id 文本 9 是blh 文本 8 否rq 日期 / 時間否sj 日期/ 時間否ghf 數(shù)字 長整型 否je 數(shù)字 長整型 否化驗檢查表 hyjc: 病歷號 blh, 化驗日期 hyrq, 化驗時間 hysj, 檢驗員 jyy, 狀態(tài) zt 等, 其中化驗檢查中的具體項目由于數(shù)目眾多 , 在此就不一一列出。主碼是病歷 號 blh, 化驗日期 (hyrq) 。此表字段用來記錄病人在院就醫(yī)時不同狀態(tài)的檢查產(chǎn)生 的結(jié)果表 3 hyjc字段名 數(shù)據(jù)類型 字段大小 必填字段blh 文本 8 是hyrq 日期/ 時間是rq 日期/ 時間是zt 數(shù)字 長整型 否jyy 文本 5 否費用表 f

19、yb: 費用憑單號 id, 病歷號 blh, 項目內(nèi)容 xmnl, 數(shù)量 sl, 收費科室 sfks 。主碼是費用憑單號 id, 項目內(nèi)容 (xmnl) 。此表字段用來記錄病人在院 所做就醫(yī)項目的相關(guān)信息。表 4 fyb字段名 數(shù)據(jù)類型 字段大小 必填字段id 文本 14 是blh 文本 8 是xmnl 文本 13 是 sfks 文本 20 否sl 數(shù)字 長整型 否藥品庫表ypkb:藥品編號ypbh,藥品名ypm,類別lb,價格jg,包裝規(guī)格bzgg,單 位dw,藥用字典yyzd。主碼是藥品編號ypbh。此表字段用來記錄醫(yī)院各種項目藥 品的相關(guān)信息。表 5 ypkb字段名 數(shù)據(jù)類型 字段大小

20、必填字段ypbh 文本 13 是ypm 文本 30 是lb 文本 4 否jg 數(shù)字 小數(shù) 否bzgg 文本 6 否dw 文本 6 否yyzd 文本 100 否病歷處方表blcfb:模板號mbh病癥名稱bzmc,病歷內(nèi)容blnr,處方內(nèi)容cfnr, 主訴內(nèi)容zsnr,開方醫(yī)生ygh。主碼是模板號mbh此表字段用來記錄醫(yī)生對病癥的研究和描述 , 方便醫(yī)生對同種病癥不同情況進行對比研究 , 提高醫(yī)生的 工作效率 , 幫助醫(yī)生進行診斷 , 判斷更為準確。表 6 ypkb字段名 數(shù)據(jù)類型 字段大小 必填字段mbh 文本 14 是bzmc 文本 100 否blnr 文本 200 否cfnr 文本 200

21、否zsnr 文本 200 否ygh 文本 5 否員工表ygb:員工號ygh,員工名kb,科別kb,職位zw,密碼pwd,等級dj。 主碼是員工號ygh。此表字段用來記錄醫(yī)院員工的基本信息并在登陸時的根據(jù)記判斷其權(quán)限。表 7 ypkb字段名 數(shù)據(jù)類型 字段大小 必填字段ygh 文本 5 是ygm 文本 20 否kb 文本 10 否zw 文本 10 否pwd 文本 10 否dj 文本 10 否本系統(tǒng)功能模塊設(shè)計與實現(xiàn) 應(yīng)用程序?qū)ο笤O(shè)計PowerBuilder9.0 開發(fā)的應(yīng)用程序的入口點是 PowerBuilder9.0 的應(yīng)用程序?qū)?象,運行是程序從這個入口點啟動 , 所以應(yīng)用程序?qū)ο蟮脑O(shè)計是應(yīng)

22、用程序設(shè)計的開 始。本應(yīng)用程序?qū)ο笾杏玫絆pen事件,輸入如下程序代碼:/ Profile mzys2SQLCA.DBMS "ODBC"SQLCA.AutoCommit FalseSQLCA.DBParm "ConnectString'DSNmzys2;UID;PWD'" connect;/ 打開程序登錄窗口opensheetw_zhigong,w_zhujiemian,8,original! 首先在應(yīng)用程序?qū)ο蟮淖兞慷x窗口中定義全局變量 , 如 int G_input_time 定 義的變量是登錄時輸入用戶名和密碼的次數(shù) ,strin

23、g yg_name 定義的是用戶 名,string yg_ygh 定義的是員工號,string g_pwd 定義的是密碼,string g_blh定義病歷號 ,string g_jzid 定義病人的就診號等等。職工登錄界面應(yīng)用程序運行后第一個出現(xiàn)的窗口就是 w_login 登陸窗口 , 界面如圖 5 所示。 圖5 職工登陸界面 用戶必須通過職工登錄窗口才能夠進入主界面。系統(tǒng)登錄窗口主要實現(xiàn) 功能是確認用戶身份及級別 , 并根據(jù)用戶級別主界面菜單中該用戶可以進行的 操作。本系統(tǒng)根據(jù)醫(yī)院具體情況將醫(yī)院職工分為種 5種職位,院長、醫(yī)生、放射員收 費員和化驗員。其中 ,院長級別最高 ,可以使用主界面菜

24、單中的任何一種操作 ,其他 各種職位級別都只能享有各自級別的權(quán)限。醫(yī)生可以進行病人就診的信息錄入、查 詢和維護 ,定義主訴病歷處方模板的定義和查詢 , 化驗檢驗結(jié)果的查詢、費用的查詢 等; 收費員可以進行掛號收費及統(tǒng)計 , 預(yù)付費用的收繳和統(tǒng)計等 ; 放射員可以對病人 的各項檢查結(jié)果進行錄入、查詢、維護等 ; 化驗員則是對病人的各項化驗結(jié)果進行 錄入、查詢、維護。在登錄界面的 OPEN(函數(shù)中定義一個游標 declare guser cursor,該游標在ygb表中搜索ygm然后添加到員工名的下拉控件中,其代碼如下:string ls_userdeclare guser cursor fors

25、elect ygmfrom ygborder by ygh;open guser;if SQLCA.SQLCode-1 thenMessageBox"數(shù)據(jù)錯誤 SQLCA.SQLErrTextelse doif ls_user'' then ddlb_1.additemls_userfetch guser into :ls_user;loop while sqlca.sqlcode0if sqlca.sqlcode-1 then messageBOX" 數(shù)據(jù)錯誤 ",sqlca.sqlerrtextend ifend ifclose guser;d

26、dlb_1.selectitem0在“確定”按紐中當判斷員工登錄條件正確時則根據(jù)員工的職位判斷那些菜單 功能將能被使用。主界面首先設(shè)計主菜單 m_zhujiemian, 根據(jù)各模塊設(shè)計好菜單項和各菜單項下面的子 菜單項, 并可添加為用戶登錄和退出以及掛號 Toolbar, 提供快捷操作。然后在主窗 口 w_zhujiemian 將 menunam中選擇設(shè)計好的主菜單 m_zhujiemian。應(yīng)用程序的 主要功能都是在主窗口 w_zhujiemian 及在其下打開的眾多窗口中完成的。主界面 如圖 6 所示。圖6 醫(yī)院管理系統(tǒng)主界面不同用戶登錄后 ,由于職位級別不同 ,主界面也會有些差異 , 不

27、能操作的菜單項 為灰色,因此,下面我們選用的都是“院長”級別登錄后的主界面,將主窗口的WindowType屬性設(shè)立為mdi型,以便在其下以特定方式打開其他窗口。主界面設(shè)計中主要是主菜單 m_zhujiemian 的設(shè)計,該菜單結(jié)構(gòu)及代碼如下 :?登錄:用戶登錄:Clicked 事件程序代碼 :opensheetw_zhigong,w_zhujiemian,8,original!退出:Clicked 事件程序代碼 :closew_zhujiemian?掛號系統(tǒng) :掛號:Clicked 事件程序代碼:ope nsheetw_guahao,w_zhujiemia n,8,origi nal!預(yù)付:C

28、licked 事件程序代碼 :opensheetw_yufu,w_zhujiemian,8,original!?就診管理:就診入口 :Clicked 事件程序代碼 : opensheetw_jiuzhenrukou,w_zhujiemian,8,original!就診歷史 :Clicked 事件程序代碼 :opensheetw_lishi,w_zhujiemian,8,original! 檢查報告 :Clicked 事件程序代碼 :opensheetw_hyjc_jcbg,w_zhujiemian,8,original! 化驗 : 血常規(guī)報告 :Clicked 事件程序代碼openSheetw

29、_hyjc_twd,w_main,8,Layered! 尿常規(guī)報告 :Clicked 事件程序代碼 opensheetw_hyjc_ncg,w_zhujiemian,8,original! 生化檢查報告 :Clicked 事 件程序代碼opensheetw_hyjc_shjc,w_zhujiemian,8,original!?模板管理:定義完整模板 :Clicked 事件程序代碼 :定義病歷模板 :Clicked 事定義處方模板 :Clicked 事模板查詢 :Clicked 事件程opensheetw_jb,w_zhujiemian,8,original! 定義主訴模板 :Clicked 事

30、件程序 代碼:opensheetw_dingyizs,w_zhujiemian,8,original!件程序代碼 :opensheetw_dingyibl,w_zhujiemian,8,original!件程序代碼 :opensheetw_dingyicf,w_zhujiemian,8,original!序代碼:opensheetw_blzsmb,w_zhujiemian,8,original!?數(shù)據(jù)管理:病人基本信息查掛號人數(shù)統(tǒng)計 :Clicked 事件程序代碼 : opensheetw_ghtongjilb,w_zhujiemian,8,original!詢 :Clicked 事件程序代碼

31、 : opensheet w_jbxx_cx,w_zhujiemian,8,original!預(yù)付款查詢 :Clicked 事件程序代碼 : opensheetw_yufucx,w_zhujiemian,8,original! 病人血常規(guī)查詢 :Clicked 事件程序代碼 : opensheetw_hyjc_xcg_cx,w_zhujiemian,8,original! 病人尿常規(guī)查詢 :Clicked 事件程序代碼 : opensheetw_hyjc_ncg_cx,w_zhujiemian,8,original! 病人生化查詢 :Clicked 事件程序代碼 : opensheetw_hy

32、jc_shjc_cx,w_zhujiemian,8,original! 病人檢查結(jié)果查詢 :Clicked 事件程序代碼 : opensheetw_hyjc_jcbg_cx,w_zhujiemian,8,original! ?數(shù)據(jù)管理:用戶安全維護 :Clicked 事件程序代碼 : opensheetw_change,w_zhujiemian,8,original! 常用維護藥字典維護 :Clicked 事件程序代碼 : opensheetw_yaodian,w_zhujiemian,8,original! 病人基本信息維護 :Clicked 事件程序代碼 : opensheetw_jbxx

33、_wh,w_zhujiemian,8,original! 血常規(guī)檢查結(jié)果維護 :Clicked 事件程序代碼 : opensheetw_hyjc_xcg_wh,w_zhujiemian,8,original! 尿常規(guī)檢查結(jié)果維護 :Clicked 事件程序代碼 : opensheetw_hyjc_ncg_wh,w_zhujiemian,8,original! 生化檢查結(jié)果維護 :Clicked 事件程序代碼 :opensheetw_hyjc_shjc_wh,w_zhujiemian,8,original!檢查結(jié)果維護 :Clicked 事件程序代碼 :opensheetw_hyjc_jcbg_

34、wh,w_zhujiemian,8,original!?報表:病人預(yù)付款報表 :Clicked 事件程序代碼 : opensheetw_yufu_bb,w_zhujiemian,8,original!病人費用報表 :Clicked 事件程序代碼 :opensheetw_chufangjj_bb,w_zhujiemian,8,original!?窗口:沒有代碼 ,用來顯示已經(jīng)打開的窗口名稱。掛號系統(tǒng)模塊根據(jù)醫(yī)院科室及掛號類型類設(shè)計掛號系統(tǒng) , 自動產(chǎn)生病歷號。先根據(jù)數(shù)據(jù)庫表 ghb 建立掛號系統(tǒng)的數(shù)據(jù)窗 ,然后建立掛號窗口 , 并使用該數(shù)據(jù)窗。掛號病人要進入 醫(yī)院門診就診的第一步就是進行掛號 ,

35、 只有進行掛號后才能獲得病歷號 , 得到其他服 務(wù)。掛號界面如圖 7 所示:圖7 掛號系統(tǒng)界面主要實現(xiàn)功能有自動分配病歷號 , 錄入員無法修改。單擊“保存” 按鈕的時候 如圖 8 所示:圖8 掛號保存界面“保存”按鈕中的代碼最主要的通過設(shè)置過濾條件來使數(shù)據(jù)窗口只能顯示當前 一條記錄本系統(tǒng)中 ,需要處理的數(shù)據(jù)繁多 , 如果僅是靠普通控件來進行輸入、查詢和維護 等操作, 只能依靠純粹的手寫代碼來進行與數(shù)據(jù)庫數(shù)據(jù)之間的交互 ,將會帶來極大的 不便。為此 , 采用數(shù)據(jù)窗口來進行對數(shù)據(jù)的處理。通過數(shù)據(jù)窗口 , 可以 對數(shù)據(jù)庫進行操作 , 不但可以對每個數(shù)據(jù)庫的表進行檢索、查詢、插入、刪除 和更新,而且還

36、可以為數(shù)據(jù)指定輸入格式、輸出格式和顯示風格等。圖 7 中左邊顯 示數(shù)據(jù)的部分既為 Grid 風格的數(shù)據(jù)窗口。本系統(tǒng)中還用到 Group 風格的來制作報 表,將在圖 9 出現(xiàn)。圖9 掛號打印界面如上圖所示 , 在單擊了圖 7 圖中的“打印”之后 , 系統(tǒng)會自動按照程序中的代碼 的要求將自動流水號傳遞到報表窗口 , 其中的“預(yù)付款 (掛號)單據(jù)”所在的數(shù)據(jù)窗 口即為 Group 窗口應(yīng)用于數(shù)據(jù)報表的典型。在掛號過程中 , 除了會為病人的分配此次的自動流水號之外 ,也會要為病人分配 一個病歷號 , 由年份(4 位)+序列號(4 位)構(gòu)成。每到新的一年 , 序列號都是從 0001 開始; 如果不是在新

37、的一年 , 則序列號是已經(jīng)在醫(yī)院就診的病人的人數(shù)加上 1構(gòu)成。 為此, 每次分配病歷號時 , 從數(shù)據(jù)庫中掛號表中提取最大的病歷號 , 將其中的年份與 當前計算機上的年份相比較 ,如果相等,則將后 4位的序列號加 1,如果是新的一年 則直接讓序列號位 0001。具體實現(xiàn)是在窗口中定義 , 代碼如下 :/ 分配病歷號string a,b,d,c,nSELECT ghb.blhinto :aFROM ghb;blefta,4dstringyeartodaycrighta,4 if bd thenmessagebox'出錯',當前系統(tǒng)時間有誤,請先調(diào)整系統(tǒng)時間',stopsig

38、n!,OK!elseif bd then cstringintegerc+1 nfill'0',4 - lenc cn+celsec'0001'end ifad+cblh1aend if分配病人自動流水號 , 病歷號的同時 , 也是要同時在病人基本信息表當中插入信息 , 首先也是先為表的主碼“就診號”分配號碼。采用自定義的函數(shù) jzh: string a,b,c,d,e,f,g,h,iSELECT jzidINTO :aFROM ghdj;bstringyeartoday / 當前系統(tǒng)日期中年份的后兩位 cstringmonthtoday / 當前系統(tǒng)日期中的月

39、份 cfill'0',2 - lenc+cdstringDaytoday / 當前系統(tǒng)日期中的日期 dfill'0',2 - lend+delefta,8/ 表中最大 ID 的前八位frighta,6 / 表中最大 ID 的后六位 , 表示序列號grighte,4hrighte,2 / 表中最大 ID 的七、八位 , 表示日期gleftg,2/ 表中最大 ID 的五、六位 , 表示月份elefte,4 / 表中最大 ID 的前四位 , 表示年份if be thenmessagebox"出錯","當前系統(tǒng)時間有誤,請先調(diào)整系統(tǒng)時間re

40、turnelseif be thenib+c+d+'000001'elseif cg thenmessagebox"出錯","當前系統(tǒng)時間有誤,請先調(diào)整系統(tǒng)時間returnelseif cg thenib+c+d+'000001'elseif dh thenmessagebox"出錯","當前系統(tǒng)時間有誤,請先調(diào)整系統(tǒng)時間returnelseif dh thenib+c+d+'000001'else fstringlongf+1ib+c+d+fill'0',6 - len

41、f+fend ifend ifend ifst_11.texti就診管理模塊病人在進入所掛號的科室進行就診入口的界面如圖 10 所示。圖 10 就診入口界面 在該界面中兩個按鈕“簡明信息填寫”和“就診”按鈕提供了強大的病人就診 信息的錄入的功能 ,方便日后醫(yī)生的對病人病史的掌握 , 日后的臨床科學研究以及病 人對自己病史的了解。在界面中當輸入病人 IDblh, 之后按下“簡明信息填寫”按 鈕就進入病人基本信息得錄入界面如圖 11 所示。圖 11 病人基本信息錄入界面該界面中使用了創(chuàng)建好的數(shù)據(jù)窗 d_jbxx, 就診號和病歷號是通過圖 10 界面的 “簡明信息填寫”按鈕中的相關(guān)代碼實現(xiàn) ( 主要

42、是利用全局變量來傳遞值 ):g_blhtrimsle_1.textjzh:g_jzidtrimst_2.textopensheet w_jbxx,w_zhujiemian,8,original!同理,在圖10中如按下“就診”按鈕,在進入如圖12所示的界面,病人ID號也 將被傳遞。界面中可以通過“保存”、“新增”等系列按鈕完成對病人此次就診的記錄工 作, 同時醫(yī)生也可以通過“申請”按鈕對需要進行進一步詳細檢查的病人提出檢查 申請, 另外可以在“處方計價”當中對病人的藥方進行計價。在醫(yī)生對病人出具病 歷處方的同時可以隨時查閱“病歷處方模板” , 以及可以通過“查看報告”查看病 人的既往檢查化驗。圖

43、 12 就診界面 上述的該功能模塊中的相關(guān)功能都是“醫(yī)生”的權(quán)限范圍 , 以下將的檢查化驗 的報告界面分別屬于“放射員” 和“化驗員”的職限。圖 13 病人檢查結(jié)果錄入界面 在這個界面中最主要的就是“增加”、“退出”幾個按鈕中的相關(guān)代碼完成了 對數(shù)據(jù)的錄入保存 :/ 判斷窗體記錄是否需要保存int MCountint updateornotmcountdw_hyjc_jcbg.modifiedcountif mcount0 thenupdateornotmessagebox" 保存修改 "," 您修改了數(shù)據(jù)窗口中的數(shù)據(jù) , 現(xiàn)在是否保存?",Questi

44、o n!,YesNoCa ncel!if updateornot1 thenif updatedw_hyjc_jcbg,true,false1 thendw_hyjc_jcbg.resetupdatecommit;elserollback;messagebox"錯誤!","數(shù)據(jù)保存失敗"returnend ifelseif updateornot2 thenrollback;elseif updateornot3 thenreturn;end ifend if模板管理模塊在模板管理模塊設(shè)計是為了醫(yī)生可以完整的定義主訴病歷處方模板 , 可以分別 定義主訴、

45、病歷、處方的模板以及在必要的時候進行模板查詢。此模塊將更加方便 醫(yī)生平時的臨床診斷 , 為臨床科研提供依據(jù)。首先建立數(shù)據(jù)窗選擇數(shù)據(jù)庫表 blcfb 中的字段 mbh,bzmc,bznr,cfnr,zsnr,ygh 。在窗口中運用該數(shù)據(jù)窗 , 通過該數(shù)據(jù)窗 可將數(shù)據(jù)保存到數(shù)據(jù)表中。以下的錄入模板設(shè)計類似此病歷處方模板錄入模板如圖 14。圖 14 完整模板錄入界面在前面提到的模板查詢界面如圖 15 所示:圖 15 病歷主訴查詢模板當醫(yī)生輸入病癥名稱之后 ,按下“確定”鍵就可以在數(shù)據(jù)窗口中顯示相似 病癥的記錄 , 如果相似病癥是多條記錄就可以通過“第一條”、“上一條”、 “下一條”、 “最后一條”進

46、行查詢選擇 ,代碼如下 :dw_1.scrolltorow1st_4.text"1"?“上一條”integer row_currentrow_currentdw_1.scrollpriorrow st_4.textstringrow_current?“下一條”integer row_currentrow_currentdw_1.scrollnextrow st_4.textstringrow_current ?“最后一條”int rowrow dw_1.rowcountdw_1.scrolltorowrowst_4.text stringrow數(shù)據(jù)管理模塊在醫(yī)院門診龐大的日

47、常管理工作中 , 不可缺少的是對后臺數(shù)據(jù)庫中的數(shù)據(jù)進行 管理, 在該功能模塊中就提供了對數(shù)據(jù)的統(tǒng)計 , 查詢。?對掛號人數(shù)的分類統(tǒng)計 (示例如圖 16) 在主界面中點擊“數(shù)據(jù)管理”下的“掛號人數(shù)統(tǒng)計” ,則通過如下代碼進入統(tǒng) 計方式選擇界面 :opensheetw_ghtongjilb,w_zhujiemian,8,original! 根據(jù)不同選擇然后判斷打開何種統(tǒng)計圖 ,如圖 16所示 圖 16 掛號科室人數(shù)統(tǒng)計界面是掛號人數(shù)按照科室統(tǒng)計的餅狀圖。該類型統(tǒng)計先創(chuàng)建一個根據(jù)數(shù)據(jù)表 ghdj中的jzid和kb字段來Graph類型的數(shù)據(jù)窗,通過對kb字段分類然后通過 countjzid for g

48、raph 然后在創(chuàng)建的統(tǒng)計窗口中使用該數(shù)據(jù)窗來實現(xiàn)。?病人基本信息查詢設(shè)計可以綜合條件的信息查詢 , 提高可供選擇的條件 , 醫(yī)生可以通過組合條件對 所需要的病人基本信息以及簡要病史進行查詢 ,如圖17所示。圖 17 病人基本信息查詢窗口?預(yù)付款查詢圖 18 查詢剩余預(yù)付款界面擁有查詢預(yù)付款權(quán)限的員工進入該界面之后 , 只需要輸入病人的病歷號 , 點 擊“確定”按鈕 ( 該按鈕代碼如下 ):dec a,b,cstring dSELECT blhinto :dFROM ghdjWHERE blh:sle_1.text;if :sqlca.SQLCode0 thenSELECT count* IN

49、TO :c ROM ghb WHERE blh:sle_1.text;if c0 thenSELECT sumje INTO :a FROM ghb WHERE blh:sle_1.text;elsea0messagebox'提示',"病人尚未交付預(yù)付金,請先補交預(yù)付金returnend ifSELECT count* INTO :c FROM fyb WHERE blh:sle_1.text; if c0 thenSELECT sumypkb.jg * fyb.sl INTO :b FROM ypkb,fyb WHERE fyb.blh:sle_1.text and

50、 /.h;aa - bend ifif a50 thend' 目前預(yù)付金額還剩 '+stringa+' 元 ' messagebox' 剩余金額 ',d elseif a0 thend' 目前預(yù)付金額僅剩 '+stringa+' 元, 請盡快補交預(yù)付金 ' messagebox' 剩余金額 ',delsed' 目前預(yù)付金額透支 '+stringAbsa+' 元, 請盡快補交預(yù)付金 messagebox' 剩余金額 ',dend if sle_1.setfocu

51、s elsemessagebox"提示","病歷號輸入有誤,請檢查后重新輸入" end if報表模塊由于前面的個功能模塊中都對病人的就診各階段的結(jié)果進行查詢 , 所以在設(shè)計 報表功能模塊時主要考慮對病人的預(yù)付款項以及病人的費用進行統(tǒng)計并呈報表。首先創(chuàng)建一個祖先窗口 w_preview 如圖 19 所示 , 它是報表生成的通用窗口 , 具 有預(yù)覽、放大縮小、打印、保存等功能 , 可以用于各個報表模塊窗口的繼承。圖 19 報表祖先窗口病人預(yù)付報表窗口是 w_preview 祖先窗口的繼承窗口 , 具有 w_preview 窗口的 功能, 界面如圖 20 所示

52、。病人預(yù)付報表窗口用于生成病人的費用憑單 , 既可以用來生成病人的所 有費預(yù)付的款項憑單 , 也可以生成其中任何一次預(yù)付憑單。其與 w_preview 祖 先窗口相比 , 多了一個顯示功能 , 可以通過病歷號或自動流水號來查詢符合條件的記 錄 , 并顯示在數(shù)據(jù)窗口中。圖 20 病人預(yù)付款報表界面此窗口所使用的數(shù)據(jù)窗口采用的是 Group分組顯示樣式的,這種顯示風格的特 點是可以檢索到的數(shù)據(jù)按某一列分組顯示 , 并允許為每一組指定一些計算。本窗口 就是按自動流水號來分組 , 分別對每一個自動流水號中的金額和整張預(yù)付憑單的金 額進行統(tǒng)計??梢宰龅角逦髁?, 便于病人查閱。病人費用報表與預(yù)付憑單報

53、表風格模式上相同 , 都是由 w_preview 繼承而來。 病人費用報表既可以根據(jù)病歷號生成一個病人按照費用憑單號來分組的所有費用的 單據(jù),又可以根據(jù)費用憑單號生成其中一次費用的單據(jù)。關(guān)鍵功能點的測試本章節(jié)介紹該小型醫(yī)院信息管理系統(tǒng)的主要功能點的測試 , 包括: 登錄模塊、就 診入口模塊、費用報表模塊。登錄模塊測試預(yù)期結(jié)果 :當正確輸入與數(shù)據(jù)庫表 ygb 中數(shù)據(jù)一致的員工名 ,ID 及密碼時都能登 錄系統(tǒng)。當輸入的員工 ID 或密碼與員工名不匹配時則分別提示何種輸入錯誤。根據(jù)本系統(tǒng)的健壯性要求對此進行了 8 次測試,下面根據(jù)測試的分類列舉了 3 次測試結(jié)果。當選擇員工名“陳沖”后輸入正確的員工號04002”和密碼“ cc ”登錄進該系統(tǒng)可執(zhí)行與他權(quán)限內(nèi)的操作當選擇員工名“陳沖”后輸入錯誤的員工號04001”和正確密碼“ cc”與該出現(xiàn)如下圖 21 所示的提示框。圖 21 登錄功能測試一當選擇員工名“陳沖”后輸入正確的員工號04002”和錯誤密碼“ cd”與該出現(xiàn)如下圖 22 所示的提示框。圖 22 登錄功能測試二分析: 經(jīng) 8 次不同類型及各類型的不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論