基于oracle的电子病历管理信息系统的开发

2012-03-16 07:42孙文静陈廷寅夏炜
关键词:病案痕迹工作站

孙文静,陈廷寅,夏炜

(武汉大学 物理科学与技术学院,武汉 430072)

电子病历(electronic medical record,EMR)是用来保存病人的健康状况和医疗信息的载体,它是由医务工作者客观的记录患者病情的变化以及诊疗过程,在医疗中可以作为主要的信息源取代纸张病历,满足诊疗、法律以及管理要求。

电子病历是以病人为中心的医学信息学的核心,是数字化医院建设的关键。随着计算机技术的发展,采用计算机存储、管理病历可以有效的解决纸质病历的查阅、辨识困难,不易保存等缺点。相比与欧美国家,我国的医院信息系统(hospital information system,HIS)起步较晚,但随着卫生部的大力推广工作,很多大型医院都建设了自己的医院信息系统。由于具有很好的实际应用价值,医院信息系统的开发已经成为国内外研究的热点课题。

1 系统框架设计

1.1 系统的设计思想

本系统开发平台选用的是power builder 5.0,数据库选择的oracle 9.0,辅助开发工具为toad。整个系统由数据库、应用程序和基础开发软件三部分组成。整个系统的设计思想是采用计算机存储、管理病历,以减少医生的负担,在保证患者的个人隐私记录数据安全的前提下尽可能使病历层次分明,简单易懂。设计思想可以概括为以下几点。

(1)简单易懂的用户界面。主要设计和开发的5个用户界面,即医生工作站界面、护士工作站界面、病案管理界面、住院系统登记界面、系统设计界面,力求使整个系统的模块界面风格统一,操作简单易懂。

(2)采用安全性较好的体系结构。本系统的设计采用C/S体系结构,此种结构的优点在于可以更好的保证数据的安全。

(3)保证系统的安全可靠。模块的设计采用ORACL数据库,采用存储空间过程间接修改数据库表格,以此来保证用户的个人基本信息和病历数据的安全性。

1.2 系统的结构模型

赋予一定权限的人员输入正确的用户名和密码就可以访问本系统。巨龙信息系统的大体结构如图1所示,图中还有护士入口,因数目较多故在图中没有标出,其结构模型和医生的大体一致。

图1 系统的结构模型Fig.1 structural models of the system

1.3 系统模块

本系统是由很多子系统建立起来的,这些子系统为实现医院信息系统的总体功能相互作用,相互连接。根据系统的目标,可以将电子病历管理系统分为以下几个模块:医生工作站,护士工作站,病案室,核算系统,药库管理,门诊医生工作站,住院系统登记系统等。系统的模块划分如图2所示,各个子系统除了完成本身的业务功能,也会收集患者的各项信息。

(1)医生工作站模块。此模块主要是让医务工作者记录患者的症状表现、治疗方案等。

(2)护士工作站。护士工作者记录住院病人体温变化以及用药情况等。

(3)病案管理。主要功能是实现对病历的查询,保存修改痕迹等。

(4)住院系统登记模块。对第一次住院的病人建卡,录入病人姓名,年龄,生育等基本信息。病人的信息存储在数据库中。

(5)系统设定模块。主要功能是用户权限设定并可以设定新的用户,此模块的操作者是数据库管理员。

图2 系统模块划分Fig.2 Modular partition of the system

2 病案管理系统的实现

电子病历的推广和普及,除了具有使用方便、成本低、可以共享等优点外,还是医疗纠纷的法律依据。因此,病案管理模块是电子病历系统的一个重要组成部分。其功能是实现对病历的查询以及病历修改痕迹的保存。病案管理系统流程图如图3所示。

图3 病案管理系统流程图Fig.3 Flow chart of electronic medical record system

根据卫生部颁发的《电子病历基本规范》规定,一个基本的电子病历系统应该具备以下三点要素。

(1)对医务人员的身份具有标识和识别手段,并设置相应的权限。

(2)当医务人员修改病历时,电子病历系统应当进行身份识别,保存历次修改痕迹、修改时间和修改人信息。

(3)能够根据授予病患的唯一标识号码,快速的查询到与患者匹配的医疗记录。

根据以上三点要求,我们实现了病案管理子系统。

2.1 登陆模块

电子病历具备法律效应。因此,电子病历的安全是整个系统安全的核心。本系统的安全模式主要是采用口令加密技术,建立安全的系统管理机制,对系统实行授权使用,进入病案系统需要用户名和密码。图4为病案管理系统登陆界面。

图4 病案管理登陆系统登陆界面Fig.4 Landing interface of electronic medical record system

2.2 查询模块

在power builder的应用程序开发中,对数据库的检索一般是通过设置power builder自带的fliter()函数中的参数进行检索。数据窗口向数据库发出检索请求,数据库接到检索命令后将所有的结果集返回给本地服务器,然后再在本地进行过滤,显示出符合条件的数据。其操作过程如图5所示。

这种检索方式的缺点也较为明显,由于需要将被检索的数据传输到本地服务器上,而被检索的数据较大,需要占用很多的带宽,而且接收完这些数据也会占用很多本地机器的内存,使检索时间过长。针对于医院中较多的数据,这种检索方式显然不能满足检索的需求。

为了解决检索较慢的特点,本文采用了一种新的检索方式。将检索条件传给数据库服务器,在数据库服务器中检索,由数据库服务器将符合条件的结果传给数据窗口并显示。其检索过程如图6所示。相对于一般的检索方式得到的庞大数据,这种检索方式得到的结果占用的带宽较少,而且本地也不需要占用较多的内存,有效的解决了检索较慢的缺点。

图5 一般的检索方式Fig.5 Gener a lretrieval method

图6 本系统采用的检索方式Fig.6 Retrieval method of the system

经过与医院沟通,最终确定将病人所在科室和日期作为检索条件,检索条件的核心代码如下所示:

将检索条件传给数据库服务器后,数据库服务器开始检索并将最终的检索结果返给本地服务器,其结果如图9所示。经过验证,本系统采用的检索方式相比于普通检索方式速度提升了20倍左右。

2.3 修改痕迹保存模块

在电子病历中,医务工作者常常会由于笔误或者某些其他的原因,需要对电子病历进行修改。由于电子病历具有一定的法律效应,为了避免不必要的纠纷发生,电子病历系统需要具有对电子病历的修改痕迹保存的功能。

由于触发器对long类型的字段不能操作,而电子病历中的字段大部分为long类型,故本系统不能简单的采用触发器。由于医生在填写单据后都需要保存单据,故可通过判断保存标识位al_form_no是否大于零来判断医疗单据是被修改过。流程如图10所示。

图7 检索条件窗口Fig.7 Window of the search condition

图8 数据库服务器接受的检索条件Fig.8 Search condition accepted by the data baseserve

图9 检索结果Fig.9 search result

图10 修改痕迹流程图Fig.10 Flow chart of the modification

保存修改痕迹的源代码如下所示:

修改痕迹保存结果如图11所示。

图11 修改痕迹保存结果Fig.11 Result of the modification

4 结束语

本文介绍了巨龙电子医院信息系统的设计和实现方法。按照卫生部出台的《电子病历基本规范(试行)》中的相关法规,实现了电子病历系统的身份识别,保存历次修改痕迹等功能。并且在对病历的查询中采用了一种新的检索方式,大大提升了检索速度。经过测试,本系统运行良好,并已推广到众多大型医院,获得医务工作者的众多好评。

[1]许新.电子病历管理信息系统的设计与实现[D].吉林大学硕士学位论文,2011.

[2]王万斌.电子病历管理系统的设计与实现[J].信息与电脑,2011(7):26,28.

[3]吴迪,赵玮,曹惠霞.建立个人电子病历管理系统[J].科学与管理,2005(4):47-48.

[4]莫顿.Oracle sql高级编程[M].北京:人民邮电出版社,2011.

[5]戴永红.Oracle实用编程教程[M].西安:西安交通大学出版社,2010.

[6]罗运模.Power builder 5.0实用入门[M].北京:北京航空航天大学出版社,1997.

[7]哈特菲尔德.Power builder 5应用程序开发指南[M].北京:清华大学出版社,1997.

[8]吴伟斌.电子病历系统的研究与开发[J].中华医院管理杂志,2004(4):204-206.

[9]赵志斌.医院信息系统的研究与应用[D].中南大学硕士学位论文,2002.

猜你喜欢
病案痕迹工作站
左权浙理大 共建工作站
基于二维码的病案示踪系统开发与应用
试析病案管理中预防病案错位发生的方法
戴尔Precision 5750移动工作站
小偷留下来的痕迹
生命痕迹
建立工作站 力促杂志健康发展
——《行政科学论坛》杂志工作站挂牌运行
试论病案管理在防范医疗纠纷中的作用
PDCA循环改进对病案首页中主要诊断正确选择的影响分析
触摸岁月的痕迹(2005)