医院信息管理系统论文.docx
《医院信息管理系统论文.docx》由会员分享,可在线阅读,更多相关《医院信息管理系统论文.docx(50页珍藏版)》请在冰豆网上搜索。
![医院信息管理系统论文.docx](https://file1.bdocx.com/fileroot1/2023-1/30/775ee90b-1d79-4f3f-aef2-2dbde25bc47a/775ee90b-1d79-4f3f-aef2-2dbde25bc47a1.gif)
医院信息管理系统论文
医院信息管理系统论文
LT
现,包括数据库的设计和连接,各功能模块的实现;最后对该软件进行了严格的测试。
关键词:
医院管理、信息系统、SQL、VB
1引言
自从人类进入21世纪,也就进入了一个高速发展的信息时代,高新技术飞速发展的同时,也使得计算机的使用范围大大扩展,它已经涉及到人类生活的方方面面。
计算机使用的方便快捷,使它在越来越多的方面显示出比传统人工制作更迅速和准确的优点,尤其是在信息记录,检索和查询方面,更是使我们人类避免了不必要的麻烦。
开发和使用医院管理系统对于医院来说是非常必要的,它能加快医院的信息化步伐,提高医院的管理水平和医疗水平,增强在同行业中的竞争实力,是现代医院管理与计算机信息技术的必要结合。
医院管理系统能加强医院内部管理、提高医疗服务水平,最大限度地提高医院运行的效率和医院管理水平,给医院带来了显著的经济效益和社会效益,也能使医院在未来竞争中处于领先地位。
本课题设计一个医院管理系统,通过这个系统管理员可以简捷、方便的对病人、医生的记录进行查阅、增加、删除等功能,而用户也可以通过这个系统对进医生和病人的信息查询、账户增删等功能。
系统采用VisualBasic作开发工具,SQLServer2000作数据库管理系统。
2系统理论基础及开发工具简介
2.1C/S结构
2.1.1什么是C/S结构
C/S(Client/Server)结构,即大家熟知的“客户机和服务器”结构,它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。
2.1.2C/S架构软件的优势与劣势
(1)应用服务器运行数据负荷较轻。
最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序,二者可分别称为前台程序与后台程序。
运行数据库服务器程序的机器,也称为应用服务器。
一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。
(2)数据的储存管理功能较为透明。
在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的运行数据在服务器程序中不集中实现,例如访问者的权限、编号可以重复、必须有客户才能建立定单这样的规则。
所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。
在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。
在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。
(3)C/S架构的劣势是高昂的维护成本且投资大。
首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。
其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。
2.2VisualBasic的介绍
VisualBasic(VB)是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。
从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。
它源自于BASIC编程语言。
VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。
程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
窗体控件的增加和改变可以用拖放技术实现。
一个排列满控件的工具箱用来显示可用控件(比如文本框或者按钮)。
每个控件都有自己的属性和事件。
默认的的属性值会在控件创建的时候提供,但是程序员也可以进行更改。
很多的属性值可以在运行时候随着用户的动作和修改进行改动,这样就形成了一个动态的程序。
举个例子来说:
窗体的大小改变事件中加入了可以改变控件位置的代码,在运行时候每当用户更改窗口大小,控件也会随之改变位置。
在文本框中的文字改变事件中加入相应的代码,程序就能够在文字输入的时候自动翻译或者阻止某些字符的输入。
VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体,类似于操作系统的样子。
有很少功能的对话框窗口(比如没有最大化和最小化按钮的窗体)可以用来提供弹出功能。
VB的组件既可以拥有用户界面,也可以没有。
这样一来服务器端程序就可以处理增加的模块。
2.3SQLServer2000简介
SQLServer是一个关系数据库管理系统,是Microsoft推出新一代数据管理与分析软件。
SQLServer是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。
SQLServer2000是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。
SQLServer2000为IT专家和信息工作者带来了强大的、熟悉的工具,同时减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。
通过全面的功能集、和现有系统的集成性、以及对日常任务的自动化管理能力,SQLServer2000为不同规模的企业提供了一个完整的数据解决方案。
SQLServer2000数据平台包括如下工具:
关系型数据库、复制服务、通知服务、集成服务、分析服务、报表服务、管理工具、开发工具。
SQLServer2000数据平台为不同规模的组织提供了如下好处:
充分利用数据资产、提高生产力、减少IT复杂度、更低的总体拥有成本(TCO)。
3系统需求分析与方案设计
3.1需求分析
计算机技术改造医院的传统管理方式,由原始经验型管理向科学型管理的转化,是替代重复性繁重的脑力劳动的过程。
只有使用计算机及信息化管理手段方能实现管理的标准化、规范化、制度化和科学化,并能排除人为干预,同时能够充分地节约医院日常工作中不必要的浪费和开支。
另外医院管理计算机化也能够使各个部门工作有机衔接,方便患者就医和医院的统计分析。
通过信息化管理,提高医院的管理水平,及时、准确的为医院综合管理、经济核算等提供信息;提高了医务人员工作效率;方便病人了解医疗服务和医疗费用各方面的信息,加强了医院经济管理,减少了漏洞;保证了住院费用的预收;提高了医疗和药品划价收费的准确性;保证了药品及时调价,实现了药品及时准确盘存核算、各项目的分类统计、出入院手续的办理和病人费用核算等各个环节均由计算机代替,其效率远远超过人工。
利用规范严格的软件和先进的硬技术相结合,杜绝了人为因素造成损失,形成了一个以病人为中心的医院信息系统。
通过对用户需求的分析,要求本系统具有以下功能:
(1)由于一项新的软件在被使用之前,对于使用者来说是陌生和崭新的,所以要求系统具有良好的人机界面;
(2)原始数据修改简单方便,在系统的使用过程中支持多条件查询;
(3)数据计算自动完成,数据的稳定性和可靠性好,尽量减少人工干预。
3.2方案设计
具体说来,要求本系统具有以下六个功能模块:
门诊管理模块、住院管理模块、药品管理模块、科室信息模块、数据管理、财务管理。
系统整体模块图如图1所示:
各模块具体的需求描述如下:
(1)病人门诊管理模块:
以系统合法的身份进入系统后,可以直接处理新增病人的记录,包括病人各项基本信息;
(2)住院信息管理模块:
医生确定该病人入院治疗,其中包括对病人用药及费用的详细描述;
(3)药品管理模块:
通过对药品的出库入库进行描述;可以有效地控制药品,以防药品流出;
(4)医生信息模块:
进入系统之后,可以在本模块进行新医生用户的基本信息诸如姓名、科室、职称、联系方式等的录入,以及通过姓名对医生的信息进行查询;
(5)数据管理模块:
对病人信息和意愿设备进行管理;
(6)财务管理
对于病人住院的费用以及后勤费用进行统计。
3.3业务流程分析
系统业务流程图(TransactionFlowDiagram,简称TFD),就是用一些规定的符号及连接来表示某个具有的业务处理过程。
我们采用以下规定符号。
人员单位文档、单据
业务流程分析可以帮助用户了解该业务的具体处理过程,发现和处理系统工作中的错误和疏漏,修改和删除业务中的不合理部分利用系统调查的资料将业务处理过程中的每一步用一完整的图形将其串起来。
3.3.1门诊业务流程分析
病人就诊前现在挂号处进行挂号,挂号成功后进行就诊。
然后医生根据诊断结果,给病人开出处方,各种需要检查,化验的单据,病人拿着这种单据到门诊划价收费处进行划价,缴费,领取药品,到对应科室进行检查化验。
具体流程如下图所示
3.3.1药房业务流程分析
病人就诊前现在挂号处进行挂号,在教授门诊,副教授门诊,普通门诊中选择一个进行就诊。
然后医生根据诊断结果,给病人开出处方,各种需要检查,化验的单据,病人拿着这种单据到门诊划价收费处进行划价,缴费,领取药品,到对应科室进行检查化验。
具体流程如下图所示:
(药品入库业务流程图)
(药品出库业务流程图)
3.3.2住院管理业务流程分析
病人由门诊转入,进行入院登记,交纳规定押金后后进入住院部进行入院观察治疗。
由住院部医生结合门诊医生开具的病历进行综合诊断,医生确诊后,将医嘱交由护士进行执行。
对病人进行治疗并核算住院费用,出院时进行结算。
3.4数据流程分析
数据流程图是一种能够全面地描述信息系统逻辑模型的主要工具,利用极少的符号综合的反映出信息在系统中的流动、处理和储存情况。
我们采用以下规定符号。
外部实体处理(功能)数据流数据储存
3.4.1门诊数据流程分析
3.4.2住院数据流程分析
(医院病房管理)
3.4.3药品书记流程图
3.5可行性研究
3.5.1技术可行性
本系统利用VisualBasic作为系统的开发工具,是因为它采用面向对象的编程方法——把程序和数据封装起来作为一个对象,并为每个对象赋予相应的属性;事件驱动的编程机制——通过事件执行对象的操作,在设计应用程序时,不必建立具有明显的开始和结束的程序,而是编写若干个过程,通过这些过程执行指定的操作;提供完善的指令控制语句,给开发高性能的系统提供了保障,保证了代码的模块化要求。
系统采用SQLServer2000作为后台数据库,它可以通过窗体提供的工具输入数据到数据库,可以使用查询设计和结构查询语言实现查询。
在技术难度方面,由于有指导老师的指导和相关的参考文献,特别是身边的同学的帮助,使得在开发过程中所遇到的困难都能够一一得到解决。
3.5.2经济可行性
随着计算机的大量普及,其价格已经越来越被众多的单位和人所接受,然而价格的低廉并不意味着性能上的退化,相反,随着科学技术的发展,计算机随着价格的降低,性能却日渐提高。
本系统的开发,在已经使用了计算机进行管理的医疗系统中无疑会受到欢迎,它会给医院的工作效率带来一个质的飞跃,其主要的优点主要表现在它可以作为医院管理系统基本功能的一个缩影,集成了门诊模块、病人登记管理模块、病人就诊信息模块和住院信息管理模块等多种功能,具有较强的实用性和先进性。
由于本系统具有安全性上面的保护措施,只有用户拥有了系统合法的用户名和相应的密码之后,才能进入系统,对系统的对应信息进行添加、修改和删除,其他非合法的用户都不能进入系统,这样,使得医院在处理信息方面更加保密。
3.5.3操作可行性
由于本系统管理的对象比较单一,都是就诊的病人和相关医务人员,且每个数据库内容具有较强的关联性,设计的过程不是很复杂,因此,比较适合于采用数据库管理。
且因为本系统所耗费的资源非常小,故一般工作中使用的微机无论在软件上还是硬件上都可以满足运行要求。
3.5.4社会可行性
最重要的一点还是在社会可行性方面。
因为目前在我国西部的许多中小型医院,没有使用计算机管理系统,信息处理基本上还处于手工状态,致使医护和管理人员劳动强度大且工作效率低,医院也为此苦恼不以,所以一个好的有效的计算机管理系统的出台是十分必要的,而在信息化发展的今天,想要提高竞争力,使用计算机管理系统已经成为一种趋势。
而该系统地提出正是顺应了这种潮流,再加上以上的三点优势:
低廉的价格,良好的可扩充性,方便的管理。
相信该计算机管理系统一定会在未来的运用中大放光彩。
4系统的实现
4.1数据库的构建
4.1.1门诊管理表
此表的设计是为了实现本医院管理系统的门诊的添加、修改、删除的管理,包括姓名、性别、出生年月、入院时间、房间号、病床号、科室、药品名称、科室自动编号、规格、单位、数量、单价:
表1住院管理表
列名
数据类型
长度
允许空
门诊号
Int
10
姓名
Int
2
性别
varchar
20
年龄
varchar
10
项目名称
varchar
2
规格
Int
5
单价
Int
10
数量
varchar
2
收费金额
varchar
5
实收
varchar
10
类别
Int
2
科室
Int
20
医生
varchar
15
执行科室
varchar
10
找零
Int
5
4.1.2住院管理表
此表的设计是为了实现本医院管理系统的门诊的添加、修改、删除的管理,包括姓名、性别、出生年月、入院时间、房间号、病床号、科室、药品名称、科室自动编号、规格、单位、数量、单价:
表2住院管理表
列名
数据类型
长度
允许空
住院号
varchar
20
姓名
Int
15
性别
Int
20
出生年月
datetime
20
入院时间
datetime
20
房间
Int
5
病床
Int
10
科室
varchar
15
药品名称
varchar
20
科室自动编号
varchar
10
规格
Int
2
单位
Int
20
数量
varchar
10
单价
varchar
2
预交金额
varchar
5
金额
Int
10
余额
Int
2
4.1.3药品管理表
此表的设计是为了实现清晰管理医院药品的供货时间、药品名称、药品规格等信息:
表3出库表
列名
数据类型
长度
允许空
药房
varchar
10
供货单位
Int
5
出库时间
Datetime
20
金额
varchar
15
项目名称
varchar
20
规格
Int
20
出库价格
Int
20
数量
varchar
5
表4盘点表
列名
数据类型
长度
允许空
药房
varchar
10
盘点时间
Int
2
项目名称
Int
5
规格
varchar
10
账面数量
varchar
2
盘点数量
varchar
20
表5入库表
列名
数据类型
长度
允许空
药房
Int
15
供货单位
Int
20
入库时间
datetime
20
金额
varchar
20
项目名称
Int
5
规格
Int
10
入库价格
varchar
15
数量
varchar
20
4.1.4科室管理表
此表是为了实现医院管理系统对于科室名称、科室编号、员工号、病房数、科室地点、系主任的添加、修改、删除等的管理:
表6科室信息表
列名
数据类型
长度
允许空
科室名称
varchar
10
科室编号
varchar
2
员工号
Int
20
病房数
Int
10
科室地点
varchar
2
系主任
varchar
5
4.2系统登陆模块
4.2.1登陆界面
这是整个系统的第一个界面,通过输入用户名和密码,进入到下一个界面:
图1登录界面
相关代码:
PrivateSubCommand1_Click()
IfText1.Text="123"AndText2.Text="zxc"OrText1.Text="456"AndText2.Text="asd"OrText1.Text="789"AndText2.Text="qwe"Then
MsgBox"登录成功",2+vbOKCancel,"登录信息"
dljm.Visible=False
yysy.Visible=True
Else
MsgBox"密码或用户名错误",5+vbExclamation,"登录提示"
EndIf
EndSub
PrivateSubCommand2_Click()
End
EndSub
PrivateSubText2_Change()
Text2.PasswordChar="*"
EndSub
4.2.2系统首页
这是进入到系统的界面,是一个MDIform窗体,利用这个窗体可以快速建立系统的各个小模块:
图2医院首页
相关代码:
PrivateSubjs1_Click()
cyjs.Visible=True
yysy.Visible=False
EndSub
PrivateSubksxx1_Click()
yysy.Visible=False
ksxx.Visible=True
EndSub
PrivateSubmzhj1_Click()
mzhj.Visible=True
yysy.Visible=False
EndSub
PrivateSubmzsf1_Click()
mzsf.Visible=True
yysy.Visible=False
EndSub
PrivateSubmztf1_Click()
yysy.Visible=False
mztf.Visible=True
EndSub
PrivateSubrydj1_Click()
rydj.Visible=True
yysy.Visible=False
EndSub
PrivateSubtc1_Click()
End
EndSub
PrivateSubypck1_Click()
ypck.Visible=True
yysy.Visible=False
EndSub
PrivateSubyppd1_Click()
yfpd.Visible=True
yysy.Visible=False
EndSub
PrivateSubyprk1_Click()
yprk.Visible=True
yysy.Visible=False
EndSub
PrivateSubzysf1_Click()
zysf.Visible=True
yysy.Visible=False
EndSub
PrivateSubcyjs1_Click()
cyjs.Visible=True
yysy.Visible=False
EndSub
4.3门诊信息管理模块
该模块共分为三个部分,分别是门诊收费、门诊退费、门诊划价。
这三个部分可以有效地进行门诊方面的管理,对病人的信息、药品的使用和费用问题进行修改。
4.3.1门诊收费
门诊收费是对病人挂号、病人信息等的管理。
可以进行查询、修改、删除、添加等操作,如下图所示:
图3门诊管理模块
图4门诊查询信息
图5查询结果
图6添加信息
图7添加结果
相关代码:
PrivateSubCommand1_Click()
OnErrorResumeNext
Data1.Recordset.EditMode
Adodc1.Recordset.Update
EndSub
PrivateSubCommand10_Click()
IfCommand10.Caption="添加"Then
Command10.Caption="确认"
Adodc1.Recordset.AddNew
Text1.SetFocus
gydm
Command10.Enabled=NotCommand1.Enabled
Else
IfCommand10.Caption="确认"ThenCommand10.Caption="添加"
Adodc1.Recordset.Update
gydm
Command10.Enabled=NotCommand10.Enabled
EndIf
EndSub
Subgydm()
Command1.Enabled=NotCommand1.Enabled
Command7.Enabled=NotCommand1.Enabled
Command8.Enabled=NotCommand1.Enabled
Command9.Enabled=NotCommand1.Enabled
EndSub
PrivateSubCommand11_Click()
mzsf.Visible=False
yysy.Visible=True
EndSub
PrivateSubCommand7_Click()
DimsnoAsString
sno=InputBox("请输入门诊号","查找窗口",2000)
Adodc1.Recordset.Find"门诊号='"&sno&"'"
IfAdodc1.Recordset.BOFThen
MsgBox"没有找到此门诊号",5+vbExclamation,"查找提示"
EndIf
EndSub
PrivateSubCommand8_Click()
DiminoAsInteger
ino=MsgBox("您确认要删除该记录吗",49,"删除记录确认框")
Ifino=1