某小型医院信息管理系统的设计与开发有源程序代码可编辑.docx
《某小型医院信息管理系统的设计与开发有源程序代码可编辑.docx》由会员分享,可在线阅读,更多相关《某小型医院信息管理系统的设计与开发有源程序代码可编辑.docx(23页珍藏版)》请在冰豆网上搜索。
某小型医院信息管理系统的设计与开发有源程序代码可编辑
某小型医院信息管理系统的设计与开发(有源程序代码)(可编辑)
某小型医院信息管理系统的设计与开发(有源程序代
码)
源程序代码等全套设计联系174320523各专业都有
分类号:
TP315UDC:
D10621-408-20075898-0
密级:
公开编号:
2003032074
成都信息工程学院
学位论文
某小型医院信息管理系统的设计与开发论文作者姓名:
张一兰
申请学位专业:
网络工程
申请学位类别:
工学学士
指导教师姓名(职称):
杜小丹(副教授)
论文提交日期:
2007年06月10日
某小型医院信息管理系统的设计与开发
摘要
本文所介绍的小型医院信息管理系统旨在改善某小型医院的信息管理,改变医院的信息处理基本还停留在手工方式的状况,降低劳动强度,提高工作效率。
本系统不仅适用于医院的行政管理业务,也适用于具体的就诊事务业务。
本系统可以使医务人员空出更多的精力和时间服务于病人,同时保证病人和医院的经济利益,从而使医院能够以少的投入获得更好的社会效益与经济效益。
本系统是利用PowerBuilder并结合医院病人管理制度,严格按照软件生
命周期来设计的一个信息管理系统。
实现了一个包括就诊管理、模板处理、数据
统计等模块在内的小型医院信息管理系统,实现不同员工登录、病人挂号就医、
病人信息查询、医生出具处理处方及划价、门诊收费与统计等功能。
本文简要介
绍了医院管理系统的项目背景和意义,着重阐述了该系统的开发实现过程,从系
统目标,需求分析、总体设计、详细设计、到系统测试等各个环节都进行了详细
的分析和描述。
关键词:
数据库;PowerBuilder;就诊
TheDesignandImplementationofaSmallScaleHospitalInformationManagementSystem
Abstract
Thesmallscalehospitalinformationmanagementsystemisdesignedforimprovingtheinformationmanagementofsmallhospital,reducingthelaborintensityandenhancingworkingefficiency.Thissystemcansupporttheadministrationofthehospitalandmanagethebusiness.Inaddition,itcanhelpfacilitatethepatient,andbringsocialandeconomicinteresttothehospitalThissystemusesPowerBuilderasdevelopinglanguage,whichisdesignedaccordingtosoftwarelifecycle.Thesystemcanimplementthepatient’sregistrationbeforehisgoingtoseeadoctor,doctor’sprocessingprescriptionandmanagementofexpense.Thethesisintroducesthesystem’sprojectbackgroundandsignificancebriefly,elaboratesthesystem’simplementationprocess.Italso
analysesanddescribesallthestagesofthesystem,includingfeasibility
study,demandanalysis,outlinedesign,detaileddesignandsystemtest
Keywords:
database;PowerBuilder;prescription
论文总页数:
30页
1引言1
1.1课题背景1
1.2国内外研究现状11.3本课题研究的意义12关键技术介绍1
2.1开发工具及运行环境12.1.1总体开发工具及环境12.1.2开发工具简介1
2.2系统需求分析2
2.3系统功能结构设计32.4数据库设计与实现43本系统功能模块设计与实现73.1应用程序对象设计73.2职工登录界面8
3.3主界面9
3.4挂号系统模块123.5就诊管理模块15
3.6模板管理模块18
3.7数据管理模块19
3.8报表模块22
4关键功能点的测试23
4.1登录模块测试23
4.2用户密码修改功能点测试24
4.3病人费用报表功能测试26
结论27
参考文献28
致谢29
声明30
引言
课题背景
随着科学的不断进步,计算机应用已经遍布整个社会的每个角落。
人们的身体健康也在不断受到重视。
因此,医院进行现代化管理就变得尤为重要。
目前社会正处于健保发展方兴未艾的时代,各医疗院所莫不兢兢业业地改善本身的体制或管理方式,以因应健保越来越严格的规范。
小型医院信息管理系统是适应时代发展的需要,提高管理的效率而开发设计的。
国内外研究现状
一个完整的医院信息管理系统应该既包括医院管理信息系统,又包括临床医疗信息系统,国外研究机构在力求实现医院信息管理系统的完整性。
临床信息管理系统在数据处理的实时性要求、相应速度、安全保密等方面一般要比管理
信息系统有更苛刻的要求。
而医院管理信息系统的计算机技术较为单纯和简单,也由于医院管理信息系统以处理文字和数字类数据为主,较少设计声音、图象、多媒体数据的动态传递等复杂要求,实现起来容易的多。
本课题研究的意义
本系统通过对病人信息管理系统方案的设计和实施,提出一种对病人在就诊过程中产生的信息进行数字化管理的技术,为门诊建立起信息高速公路,促使医院门诊逐步形成方便、科学、合理的管理模式。
从根本上改变传统的依靠文件等信息的传递方式,实现无纸化办公,简化就诊手续,加快信息流通速度,提高治疗效率,基本实现医院系统的数字化管理。
同时,本系统对病人既往病史以及用药记录存档,既便于医生更加准确的对当前病人的诊断,同时也有利于医生对各种病例进行分析研究。
病历模板的套餐制更具灵活性。
关键技术介绍
开发工具及运行环境
总体开发工具及环境
本系统采用的软件开发工具及环境如下:
操作系统:
WINDOWSXP
编程工具:
PowerBuilder9.0
数据库:
ACCESS
开发工具简介
PowerBuilder是一个图形化的应用程序开发环境。
使用PowerBuilder开发的应用软件由窗口构成,窗口中不仅可以包含按钮、下拉列表框及单选按纽等标准的Windows控件,还可以有PowerBuilder提供的特殊控件。
这些特殊控件
可以使应用软件更容易使用,使应用软件的开发效率更高。
例如,数据窗口就是PowerBuilder提供的一个集成度很高的控件,使用该控件可以很方便地从数据库中提取数据,很简单地检索数据,提供图形化的数据显示方式,创建统计功能非常强大的数据统计表。
由于数据窗口对数据的操作是通过事务进行的,所以对数据的操作有很强的可靠性。
这些都为开发功能强大的数据库应用软件提供了可靠的保证。
商业化的软件开发要求有很好的移植性。
PowerBuilder既可以跨平台开发,也可以发行跨平台软件。
例如,在Windows95下开发的程序,可以不修改源程序而形成UNIX下的执行文件或Macintosh下的执行文件。
在开发小组中,不同成员可以使用不同的开发环境,但由于PowerBuilder的支持,在不同的开发环境下看到的共享PowerBuilder对象是相同的,所以仍可以同时开发同一个应用程序。
随着软件技术的不断发展,PowerBuilder9.0及时地强化了开发功能,并提供了一些配套的开发工具,成为一种易于使用的、可伸缩的并经实践证明的快速集成开发环境。
它在给用户提供一条转移到下一代平台的途径的同时,使用户仍能够保护和扩展现有的技术和应用上的投资。
系统需求分析
病人在就诊过程中,基本的业务流程如图1所示:
图1业务流程图
通过对病人就诊流程及管理的调查和了解,初步确定了该系统的基本需求情况:
在病人就诊之前,必须进行挂号,包括病人的最基本信息,挂号费用,预存
费等。
在病人进行挂号的同时,可以自动为病人分配病历号,作为病人在就诊过程中的唯一标识。
在病人就诊时,医生可以对病人基本信息包括简要病史等等进行登记。
对病人每次就医的主诉,病历,处方进行输入,并可以进行查询和维护。
各种化验检查信息的输入、查询和维护,并可以进行异常提醒。
对病人的预付款进行管理,并且当预付金额不够时可以提醒补交预付款。
对病人就诊过程中的各种费用进行管理。
可以打印病人预付款单据和费用凭单。
医生可以查询病人治疗情况、化验检查结果,以便跟踪病人病情发展情况,同时也有助于医生对各种病例进行分析研究。
系统功能结构设计
本系统划分为7个功能模块,系统功能模块图如图2所示。
图2系统功能模块
各模块如下:
员工管理:
主要包括员工登陆,修改密码,判别用户级别功能。
病人管理:
主要包括病人的基本信息登记。
主要包括对病人基本信息的录入、查询和维护等操作。
病人基本信息的录入窗口可以从就诊窗口进入,系统可以记忆当前就诊病人病历号以及当前录入员的姓名。
就诊管理:
主要包括对病人此次就诊病情的录入,过往病史的查询及检查和化验结果进行录入。
模板管理:
主要医生针对各种典型病种所开具的主诉、病历、处方录入、查询。
化验检查管理:
主要包括对病人每次所做化验和检查的结果进行录入、查询和维护。
费用管理:
主要包括预付款管理和费用管理。
预付款管理:
主要包括对预付金额进行录入、查询和维护等操作。
并且可以根据支出情况进行费用统计、查询余额和缺钱警示。
费用支出管理:
主要包括对病人药费、检查、化验等支出进行录入、查询和维护等操作。
报表打印:
根据需要生成各种报表,并且打印出来。
数据库设计与实现
在仔细调查医院就诊管理过程的基础上,得到系统所要处理的数据流程图,如图3所示。
图3数据流图
本系统根据上面的设计规划出的实体有4个:
病人、医生、化验检查员、药品。
下面为本系统实体之间关系的E-R图,如图4所示。
图4实体关系E-R图
根据以上的分析设计得到实际数据库模型。
数据库设计如下:
病人基本情况表ghdj:
就诊号(jzid)、病历号blh,姓名xm,身份证号sfzh,性别xb,出生日期sr,婚否?
hf,地址dz,电话dh,日期ryrq,科别kb,主诉
zs,现病史xbs,病历(bl),处方cf,医嘱yz,医生ys。
主码是就诊号jzid。
此表
字段用来保存病人的相关详细信息,包括病人基本信息和病人在医院就诊相关信
息。
表1ghdj
字段名数据类型字段大小必填字段
jzid文本14是
blh文本8是
xm文本20否
sfzh数字小数否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。
此表字段用来记录病人在医院挂号就医时产生的相关数据。
表2ghb
字段名数据类型字段大小必填字段
id文本9是
blh文本8否
rq日期/时间否
sj日期/时间否
ghf数字长整型否
je数字长整型否
化验检查表hyjc:
病历号blh,化验日期hyrq,化验时间hysj,检验员jyy,状态zt等,其中化验检查中的具体项目由于数目众多,在此就不一一列出。
主码是病历号blh,化验日期(hyrq)。
此表字段用来记录病人在院就医时不同状态的检查产生的结果
表3hyjc
字段名数据类型字段大小必填字段
blh文本8是
hyrq日期/时间是
rq日期/时间是
zt数字长整型否
jyy文本5否
费用表fyb:
费用凭单号id,病历号blh,项目内容xmnl,数量sl,收费科
室sfks。
主码是费用凭单号id,项目内容(xmnl)。
此表字段用来记录病人在院所做就医项目的相关信息。
表4fyb
字段名数据类型字段大小必填字段
id文本14是
blh文本8是
xmnl文本13是sfks文本20否
sl数字长整型否
药品库表ypkb:
药品编号ypbh,药品名ypm,类别lb,价格jg,包装规格bzgg,单位dw,药用字典yyzd。
主码是药品编号ypbh。
此表字段用来记录医院各种项目药品的相关信息。
表5ypkb
字段名数据类型字段大小必填字段
ypbh文本13是
ypm文本30是
lb文本4否
jg数字小数否
bzgg文本6否
dw文本6否
yyzd文本100否
病历处方表blcfb:
模板号mbh,病症名称bzmc,病历内容blnr,处方内容cfnr,主诉内容zsnr,开方医生ygh。
主码是模板号mbh。
此表字段用来记录医生
对病症的研究和描述,方便医生对同种病症不同情况进行对比研究,提高医生的
工作效率,帮助医生进行诊断,判断更为准确。
表6ypkb
字段名数据类型字段大小必填字段
mbh文本14是
bzmc文本100否
blnr文本200否
cfnr文本200否
zsnr文本200否
ygh文本5否
员工表ygb:
员工号ygh,员工名kb,科别kb,职位zw,密码pwd,等级dj。
主码是员工号ygh。
此表字段用来记录医院员工的基本信息并在登陆时的根据登
记判断其权限。
表7ypkb
字段名数据类型字段大小必填字段
ygh文本5是
ygm文本20否
kb文本10否
zw文本10否
pwd文本10否
dj文本10否
本系统功能模块设计与实现
应用程序对象设计
PowerBuilder9.0开发的应用程序的入口点是PowerBuilder9.0的应用程序对象,运行是程序从这个入口点启动,所以应用程序对象的设计是应用程序设计的开始。
本应用程序对象中用到Open事件,输入如下程序代码:
//Profilemzys2
SQLCA.DBMS"ODBC"
SQLCA.AutoCommitFalse
SQLCA.DBParm"ConnectString'DSNmzys2;UID;PWD'"
connect;
//打开程序登录窗口
opensheetw_zhigong,w_zhujiemian,8,original!
首先在应用程序对象的变量定义窗口中定义全局变量,如intG_input_time定义的变量是登录时输入用户名和密码的次数,stringyg_name定义的是用户名,stringyg_ygh定义的是员工号,stringg_pwd定义的是密码,stringg_blh定义病历号,stringg_jzid定义病人的就诊号等等。
职工登录界面
应用程序运行后第一个出现的窗口就是w_login登陆窗口,界面如图5所示。
图5职工登陆界面
用户必须通过职工登录窗口才能够进入主界面。
系统登录窗口主要实现
功能是确认用户身份及级别,并根据用户级别主界面菜单中该用户可以进行的操作。
本系统根据医院具体情况将医院职工分为种5种职位,院长、医生、放射员收费员和化验员。
其中,院长级别最高,可以使用主界面菜单中的任何一种操作,其他各种职位级别都只能享有各自级别的权限。
医生可以进行病人就诊的信息录入、查询和维护,定义主诉病历处方模板的定义和查询,化验检验结果的查询、费用的查询等;收费员可以进行挂号收费及统计,预付费用的收缴和统计等;放射员可以对病人的各项检查结果进行录入、查询、维护等;化验员则是对病人的各项化验结果进行录入、查询、维护。
在登录界面的OPEN()函数中定义一个游标declaregusercursor,该游标在ygb表中搜索ygm然后添加到员工名的下拉控件中,其代码如下:
stringls_user
declaregusercursorfor
selectygm
fromygb
orderbyygh;
openguser;
ifSQLCA.SQLCode-1then
MessageBox"数据错误",SQLCA.SQLErrText
elsedo
ifls_user''thenddlb_1.additemls_user
fetchguserinto:
ls_user;
loopwhilesqlca.sqlcode0
ifsqlca.sqlcode-1thenmessageBOX"数据错误",sqlca.sqlerrtext
endif
endif
closeguser;
ddlb_1.selectitem0
在“确定”按纽中当判断员工登录条件正确时则根据员工的职位判断那些菜单功能将能被使用。
主界面
首先设计主菜单m_zhujiemian,根据各模块设计好菜单项和各菜单项下面的子菜单项,并可添加为用户登录和退出以及挂号Toolbar,提供快捷操作。
然后在主窗口w_zhujiemian将menuname中选择设计好的主菜单m_zhujiemian。
应用程序的主要功能都是在主窗口w_zhujiemian及在其下打开的众多窗口中完成的。
主界面如图6所示。
图6医院管理系统主界面
不同用户登录后,由于职位级别不同,主界面也会有些差异,不能操作的菜单项为灰色,因此,下面我们选用的都是“院长”级别登录后的主界面,将主窗口的WindowType属性设立为mdi型,以便在其下以特定方式打开其他窗口。
主界面设计中主要是主菜单m_zhujiemian的设计,该菜单结构及代码如下:
?
登录:
用户登录:
Clicked事件程序代码:
opensheetw_zhigong,w_zhujiemian,8,original!
退出:
Clicked事件程序代码:
closew_zhujiemian
?
挂号系统:
挂号:
Clicked事件程序代
码:
opensheetw_guahao,w_zhujiemian,8,original!
预付:
Clicked事件程序代码:
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!
化验:
血常规报告:
Clicked事件程序代码
openSheetw_hyjc_twd,w_main,8,Layered!
尿常规报告:
Clicked事件程序代码
opensheetw_hyjc_ncg,w_zhujiemian,8,original!
生化检查报告:
Clicked事件程序代码
opensheetw_hyjc_shjc,w_zhujiemian,8,original!
?
模板管理:
定义完整模板:
Clicked事件程序代码:
opensheetw_jb,w_zhujiemian,8,original!
定义主诉模板:
Clicked事件程序代码:
opensheetw_dingyizs,w_zhujiemian,8,original!
定义病历模板:
Clicked事件程序代码:
opensheetw_dingyibl,w_zhujiemian,8,original!
定义处方模板:
Clicked事件程序代码:
opensheetw_dingyicf,w_zhujiemian,8,original!
模板查询:
Clicked事件程序代码:
opensheetw_blzsmb,w_zhujiemian,8,original!
?
数据管理:
挂号人数统计:
Clicked事件程序代码:
opensheetw_ghtongjilb,w_zhujiemian,8,original!
病人基本信息查询:
Clicked事件程序代码:
opensheet
w_jbxx_cx,w_zhujiemian,8,original!
预付款查询:
Clicked事件程序代码:
opensheetw_yufucx,w_zhujiemian,8,original!
病人血常规查询:
Clicked事件程序代码:
opensheetw_hyjc_xcg_cx,w_zhujiemian,8,original!
病人尿常规查询:
Clicked事件程序代码:
opensheetw_hyjc_ncg_cx,w_zhujiemian,8,original!
病人生化查询:
Clicked事件程序代码:
opensheetw_hyjc_shjc_cx,w_zhujiemian,8,original!
病人检查结果查询:
Clicked事件程序代码:
opensheetw_hyjc_jcbg_cx,w_zhujiemian,8,original!
?
数据管理:
用户安全维护:
Clicked事件程序代码:
opensheetw_change,w_zhujiemian,8,original!
常用维护药字典维护:
Clicked事件程序代码:
opensheetw_yaodian,w_zhujiemian,8,original!
病人基本信息维护:
Clicked事件程序代码:
opensheetw_jbxx_wh,w_zhujiemian,8,original!
血常规检查结果维护:
Clicked事件程序代码:
opensheetw_hyjc_xcg_wh,w_zhujiemian,8,original!
尿常规检查结果维护:
C