信息系统开发Word格式文档下载.docx
《信息系统开发Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《信息系统开发Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
![信息系统开发Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-11/27/ea4ca142-2d82-4992-a786-c80bed14cff0/ea4ca142-2d82-4992-a786-c80bed14cff01.gif)
1.4文章结构2
第二章系统需求分析3
2.1管理需求分析3
2.2功能需求分析4
2.3操作性需求分析4
第三章系统分析与设计6
3.1业务流程分析6
3.2数据表设计6
3.3功能设计7
第四章技术实现8
4.1如何实现界面美化处理8
4.2导航菜单的实现方法9
4.3如何实现多项目集中维护10
4.4如何实现快速病人登记11
4.5报告处理平台的开发12
4.6报告编辑模块13
4.7如何实现程序的自动更新13
4.8自定义查询的实现14
第五章结论16
参考文献17
致谢18
第一章引言
近年来,我国医院数字化建设取得了长足的进步,逐步建成了HIS、临床医生工作站、PACS和LIS等具有临床性质的网络信息系统[1],但在电子检查报告信息化方面,绝大部分医院基本采用单机模式或手工模式报告,这样使各检查科室的报告结果不能被其它信息系统利用,也不能获取其它信息系统的信息资源,给医院管理带来了一定的难度。
我院根据检查报告管理要求设计采用Powerbulder11.0开发了基于全检查科室的通用型电子报告处理系统,并能与其它信息系统实现的无缝连接充分实现的网络信息资源共享,解决了病人检查管理、报告书写、报告档案管理等一系列问题,有效提高了工作效率和管理水平,医院的数字化建设达到了一个新高度。
1.1系统开发的背景及意义
医学检查电子报告管理系统是为医院建立一个医学检查信息化的工作平台,将患者信息、报告、设备、耗材、检查流程统一到以电脑网络为基础的软件平台之上,而服务器则是系统的核心,它承担整个网络系统数据库、管理服务。
目前一些条件好的三级医院采用专业PACS/RIS系统为医院构建庞大的医学影像信息网络,其中函盖了电子报告处理功能,但投资巨大使二级以下医院难以承受,为此本系统提出通用报告处理平台的开发概念,将医学检查的共性流程如预约登记、检查收费、报告处理、二级审核、报告发放、报告借阅等功能集成到一个开发平台上,采用不同的科室及设备类型关键字加以区分,数据库采用一个的数据库管理,这样硬、软件的投资会很小又能实现检查报告信息化管理。
1.2系统开发目的和要求
系统开发尽量采用现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。
系统要符合医学报告书写和管理的规范要求,提供大量的医学报告术语和自定义模板,满足各检查科室相应检查报告的处理需要。
系统采用C/S体系结构,Client(客户端)负责提供表达逻辑、显示用户界面信息、访问数据库服务器;
Server(服务器端)则用于提供数据服务;
采用模块化程序设计方法,即便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;
操作能直观、方便、实用、安全。
系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改备份等操作;
应具备自动更新功能,以方便今后程序的更新自动化处理;
应满足不同科室的报告需求,能根据科室的变化自动进行相应报告格式、模块、术语内容及人员权限的调整。
建立以病人为中心的管理模式,任何时候可以查找到任何一个病人的任何检查信息和诊断报告。
这些信息包括超声、普通X线、造影、CR、DR、CT、核磁共振、DSA、ECT、PECT、SPECT、心电、胃镜、病理等,将检查科室完整的工作流实现电脑化管理,包括登记、报告等内容。
可以检测到每个病人在工作流中所处的位置,为管理者提供必要的统计和分析信息等。
1.3开发工具和运行环境选择
开发工具选用Sybase公司的PowerBuilder11.0,PowerBuilder是目前最有代表性的数据库应用开发工具,它集面向对象数据库技术、分布式应用技术、多媒体技术于一身,堪称当今最成功的数据库应用系统的辅助开发工具,也是目前开发效率最高的数据库开发工具[3]。
数据库则采用微软的大型数据库SQLServer2005,目前大多数医疗单位HIS数据库均使用SQLServer,本系统充分利用现有资源并能与HIS系统进行更好的连接。
客户端软件在Windows主要操作系统上均可安装使用。
1.4文章结构
文章在第一章引言中简述了系统开发的前景、意义、目的以及开发工具的选择;
第二章从管理、功能、操作三个方面的需求进行了细致的分析;
第三章对数据库和系统功能进行了分析设计;
第四章详细论述了系统主要功能的实现技术思想和方法;
第五章对该系统开发进行总结并指出了系统存在的不足和改进的思路。
第二章系统需求分析
系统需求主要分为管理需求、功能需求和操作需求,以下分别加以阐述。
2.1管理需求分析
(1)解决各科检查报告互相独立,不能统一管理的问题
目前检查科室报告基本是各自为政的局面,有的采用了单机版报告软件如胃镜、病理等,这些科室一般采用和设备连接的单机报告处理软件,独立性很强。
还有的是采用了小网络版如B超室,将所有B超设备主机通过网络连接起来实现B超报告的集中管理。
大多数还是采用手工报告形式如放射、心电图等。
所有这些管理类型的最大缺点就是不能将各自信息进行集中管理和互相资源共享,更不能和其他基础医疗信息系统连接来获取病人基本信息,实现资源的互用。
本系统需要将各科检查报告统一到一个数据库中,共享统一的数据表,通过科室和报告类型来区别不同的报告并自动定义不同的报告格式实现报告的集中管理存放并通过和HIS、医生站的连接使多系统间的信息资源可以互相利用。
(2)解决与其他信息系统数据不能共享的问题
该系统要能与HIS系统及医生站、护士站实现高度集成,要能从HIS系统中自动调入病人收费和电子检查申请等信息,能自动执行检查单并自动记帐和收费确认,能在HIS中反映出各个检查科室的工作业绩和报告管理水平;
并将医生站的电子检查申请信息传给报告系统并能从医生站和电子病历系统中调阅病人的检查信息;
能与体检系统进行连接,读入体检申请信息并将报告结果传回给体检系统以便体检系统进行体检结论。
(3)能够对漏费检查进行有效管理
医疗检查在各个医院历来是漏费较严重的环节,由于手工管理及与设备脱节的关系,使检查漏费管理难度很大。
本系统要能通过对病人来源的登记管理,要在一定程度上控制人情检查、漏费检查。
要在系统中很清楚地知道每个病人的收费信息,能有效地监督所有检查产生的真正收入和漏费金额。
(4)能够对所有检查设备和检查项目进行综合数据分析
信息系统的一个重要作用就是要将所保存的数据记录进行分类、汇总、挖掘等;
要能在任何时候随时能查到特定病人的检查记录及诊断报告;
要能充分反应各个检查设备和不同的检查项目的检查数据,并根据设备利用率能产生分析图,要在一定程度上帮助医院领导进行决策。
2.2功能需求分析
(1)整体框架维护功能
系统设计要有框架意识,框架是一个系统开发运行的基础平台,一个好的框架能提高程序的开发效率,简化开发环节。
框架要包含系统维护、菜单维护、菜单权限管理、角色管理、人员管理、密码管理、更新管理、系统锁定、系统关闭等系统管理维护功能。
(2)合理的业务流程
合理的业务流程是一个信息系统是否值得推广的重要因素,系统要根据临床实际情况设置合理的业务流程,要有预约登记、检查确认、报告处理、审核、发放、借阅、归档、查阅等所有业务逻辑流程,流程顺序要合理,对违反流程操作的要有智能提醒功能。
(3)多级权限管理
一个安全的系统必须具备完善的权限管理机制,检查报告的权限管理还不同于一般的信息系统,系统中人员不仅要有不同的角色权限即程序菜单运行的权限,同时还要有不同设备类型的报告权限管理,如放射科有些人具备全部放射设备的检查报告处理权限,有的人只具备个别设备的报告处理权限,这些要求都需要在系统设置的反应出来,这样才能使不同科室的人员或相同科室的人员即使是同一角色也有不同的报告权限。
(4)强大的数据分析及查询功能
系统登记信息和报告信息要全面,要能形成详细的数据分析报告。
查询功能要能够根据自定义查询条件产生相应的查询结构。
要能根据报告内容进行语义或关键词分析及产生疾病分型报告。
2.3操作性需求分析
(1)操作简洁,能快速实现病人检查信息的登记
业务信息系统必须要简化操作,提高效率的作用,所以系统设计操作界面时要合理布局,简化流程操作或用技术手段快速处理流程[4]。
所有的操作要简洁明了,能够利用其他信息系统数据资源的要充分利用,要采用自动调入方式来简化操作,所有登记信息要充分利用HIS数据来快速实现信息登记。
(2)报告编辑功能强大,能实现模板、术语与自然语言的结合
报告编辑处理是整个系统的核心模块,也是技术难度最大的模块,编辑功能的强弱直接关系诊断报告的效率。
报告编辑功能要强,能自动调入模板、术语并能插入自然语言进行混合编辑,有多语义单词选择功能、术语插入功能、自动排版功能,要实现所看即所得的处理效果。
(3)将多项目维护结合至单一窗口中
系统要利用树型结构将多个维护功能进行结合,使维护窗口功能强大、复杂,避免使用多个窗体切换来维护不同的项目。
第三章系统分析与设计
3.1业务流程分析
报告系统业务流程包括病人预约登记、检查执行确认、报告编辑处理、报告审核、报告打印、报告发放、报告归档、报告借阅、报告查询、报告分析等所有实际工作逻辑业务流程。
流程环节顺序要合理,程序设计时要严格按照逻辑顺序不能违反操作流程。
简要流程如图3-1所示:
图3-1电子报告管理简要流程图
3.2数据表设计
数据库表结构主要分为系统表与业务表,系统表主要是存放的系统运行各类数据如菜单、人员、角色、权限等,业务表主要存放电子报告管理中的各种数据如模板、术语、登记信息、报告信息等,具体表名称、功能、字段内容见表3-1。
表3-1电子报告管理系统数据表
类型
表名
功能
字段
系
统
表
Sys_ryb
系统使用人员信息
人员号、姓名、密码等
Sys_rwh
存放导航菜单信息
菜单名称、关联窗体等
Sys_role
存放角色信息
角色ID、角色名称等
Sys_roleqxb
存放角色权限
角色ID、菜单ID等
Sys_logon
存放系统运行日记
登录人员、登录时间、登录IP
Sys_product
存放机器注册信息
机器码、注册码、注册时间等
Sys_filecode
存放文件更新信息
更新号、文件名称、更新时间
Sys_file
存放更新文件
更新号、文件对象、校验码
业
务
Gy_yhbgqx
用户报告权限
用户名、设备报告类型
Gy_sblx
设备类型
设备类型、设备名称、检查科室
Gy_brly
病人来源
病人来源、名称
Gy_jcks
存放所有检查科室
科室号、科室名称
Ris_djxx
存放病人登记信息
ID、姓名、性别、检查类型等
Ris_bgxx
存放病人诊断报告
报告ID、登记ID、报告内容等
Ris_mbly
存放模板内容
模板ID、模板内容、检查部位等
Ris_jcbw
存放检查部位
ID、部位名称等
Ris_syly
存放报告术语
ID、检查类型、检查术语等
Ris_jcxm
存放检查项目内容
ID、HIS序号、项目名称等
3.3功能设计
报告管理系统将功能分为三个方面,分别是系统管理功能、业务操作功能、业务管理功能。
系统管理功能主要是系统框架功能如权限分配、菜单定义、用户管理等,业务操作功能主要为检查登记、报告编辑、报告审核等、业务管理功能主要是综合查询、漏费管理、经济核算、报告查询等,具体见表4-1。
表4-1系统菜单功能表
功能类型
功能名称
功能介绍
系统功能
人员管理
主要是登录人员的参数设置
角色管理
以角色类别来定义不同群的权限
导航菜单管理
导航菜单以数据表的形式保存,并有管理窗口。
自动更新设置
上传更新文件或更新启用时间
数据备份与恢复
用于数据库备份和恢复
日记查询
用于系统日记查询
业务功能
检查登记
登记检查病人信息并分配报告档案号
报告处理
报告处理平台,是系统的核心模块
报告审核
由上级医师进行报告审核并归档
报告发放
报告发放登记
管理功能
系统维护
主要是科室、部位、设备类型、报告权限维护等
模板、术语定义
根据设备类型和检查部位定义模板、术语内容
报告查询
查询指定人的历次报告
综合查询
根据自定义查询条件来进行复杂查询
自定义报表
采用专用报表工具来自定义生成所需的各种报表
数据分析
对阶段内进行经济、设备使用进行深度分析
第四章技术实现
4.1如何实现界面美化处理[5]
界面采用换肤组件产生XP效果,换肤组件采用第三方动态链接库控件SatManager.dll和皮肤软件Office2007.skn,通过定义用户对象将动态库中的外部函数进行打包处理,然后在应用程序打开时调用该用户对象中的函数将皮肤加载到程序界面中,从而使程序整体界面变得非常漂亮,给用户一种好的感觉。
4.2导航菜单的实现方法
采用导航条来管理业务菜单是这个系统开发的一个亮点,而且这个导航条中的菜单能通过维护操作进行增加、编辑、修改等操作。
主要实现方法是在数据库中定义菜单任务表,将要放在导航条中的菜单名称、要操作的窗口或对象、窗口打开的参数通过一个维护界面保存在这张表里,然后制作一个可视树型对象,定义相应的函数和事件结合用户权限来调用菜单任务表中的数据并加载到树型结构中,单击不同的任务菜单即打开相应的窗口或对象[6]。
导航功能菜单全部采用自定义方式,通过任务管理窗口定义动作参数保存到菜单表中,选择导航菜单时打开相应的窗口。
实现方法是:
制作任务维护窗口对象w_gl_rwb,在窗口中放置一个树型控件,再添置几个操作按钮,分别是检索、编辑、增加、删除、更新、保存、撤消、关闭。
在窗口打开时执行检索按钮的clicked事件将任务菜单表中的数据增加树型控件中,再通过其他按钮来进行不同的数据操作,从而达到增加、删除、修改菜单的目的。
4.3如何实现多项目集中维护
项目维护充分利用树形结构的优势将检查部位、检查项目、报告模板、报告术语、报告权限等维护集中到一个窗口中,数据窗口内容将根据不同的选择获取相应的数据窗口对象参数作相应的变化。
数据窗口控件和功能按钮调用了预先定义的可视化窗口对象,整个维护窗口代码量很少但功能确较强大,内嵌了拼音代码生成对象,输入名称后将自动判别是否汉字生成相应的拼音码。
主要实现方法是:
继承一祖先窗口对象w_temp_sheet(所有的操作窗口都是继承该窗口对象,在祖先对象中已经对窗口位置和与主窗体大小配合方面进行了定义)取名为w_wh_xmwh。
在窗口中继承一个已经进行特殊封装的树型对象uo_treeview和一个封装的数据窗口对象dw_main(在该祖先对象中已经封装了数据增加、删除、列标题排序、单多行选择等数据操作函数),再添置一个tab控件和几个操作按钮。
当选择模板内容编辑时tab控件变为可见并获得焦点,否则均为不可见。
在窗口open事件中调用窗口函数wf_inittreeview来加载要维护的项目。
在树型控件的selectionchanged事件中定义各个菜单所对应的数据窗口对象,并在数据窗口控件中作相应调整,当维护项目名称时,根据中文名称在拼音码字段中自动加载拼音码,该功能主要是通过一个自定义的数据窗口对象函数op_chinesToPym()来实现。
4.4如何实现快速病人登记
检查登记根据病人来源的选择,输入识别号码(门诊为病历条码或收费发票、住院为床位号或住院号码、体检为体检单条码)或自动扫描识别条码相从HIS中自动调入病人电子申请和收费信息[7],检查项目将根据不同的检查科室作相应的过滤。
在这个模块中主要集成了与HIS和体检系统的连接接口,病人的基础信息的采集都来自于HIS系统和体检系统。
登记号的发放规则有一定的特殊性,病人初次做检查项目,肯定没有相应的档案号,登记程序登记成功后,系统将返回给HIS一个档案号,此号作为病人资料的一部分保存在HIS的病人主索引中。
病人每次来做同种类型的设备检查登记时,因为有一人多号的现象,所以即使病人主索引中没有档案号,也并不能说明他没有登记过,此时在登记程序将进行AotoSearch的操作,这是一个非常有效的机制,它通过病人姓名、联系电话、住址、年龄等的匹配方法,能查询到以前分配给此病人的档案号,并继续使用此号作为此次档案号,如果没能查到匹配的结果,则通过系统的档案号发生器产生新号,并保存到病人的主索引中。
如果病人主索引中有档案号,这说明这是以前分配的档案号,应继续使用。
采用此方法使得HIS的病人ID号与报告系统的档案号之间形成了多对一的关系,无论通过哪一个病人ID号都可以供检索和调阅该病人所有的影像和诊断报告。
当由于某些如抢救、特殊病人等特殊情况时没有交费信息时可通过病人来源中选择未交费类型,可以继续检查但系统登记时将此类病人进行漏费标记,这类病人可随时进行统计并由主任进行监督管理,同时HIS系统中的核算模块能随时汇总进行核算处理,来加强医院对漏费的监督管理。
4.5报告处理平台的开发[8]
根据选择不同的状态和登记日期段,数据窗口中将显示该状态下的登记信息,检查人员再选择检查的实际部位后即进入编辑状态。
该模块的优点是采用了树型结构将设备类型和流程状态整合到一起,能一目了然地知道同一个科室不同的设备类型检查流程的各个阶段检查信息,主要分为未登记、未完成、已完成未审核、已审核四种报告状态,
4.6报告编辑模块
报告编辑窗口是这个系统中最重要的模块,集成了疾病模板、报告术语选择功能、多语义单词选择以及自动折行排版的功能。
自动折行排版主要是为了将报告编辑工具控件中的文本内容进行预览并根据设定的纸张大小来进行自动折行排版。
[9]
4.7如何实现程序的自动更新[10]
该系统集成了自动更新功能,当有新的程序发布时通过程序上载功能将编译好的PBD文件作为对象上传到服务器中,当客户端打开程序时将自动与服务器程序进行校验,如与新程序不一致将下载程序并覆盖原来程序,也可手动下载。
4.8自定义查询的实现
制作一通用自定义查询窗口,在窗口的OPEN事件中根据传入的数据窗口参数自动获取数据窗口字段和字段参数,再根据定义的多条查询条件形成过滤语句传入数据窗口进行内容过滤。
技术要点主要是如何取得要查的数据窗口的列再根据列取得各自的参数值。
取数据列主要用到了Describe()函数,再通过SetItem()函数将列名值填入自定义条件选项框中,通过GetItemString()或GetItemNumber()等函数获取列的参数值,再构造查询过滤语句通过Setfilter()和Filter()函数对数据窗口进行过滤查询从而获得所要条件的数据记录。
第五章结论
文章应用了比较先进的数据库设计理念对医疗检查报告的数字化管理进行了初步的探讨,详细分析了各种实际需求和功能。
在模块的开发上采用了大量的Tree控件,简化了数据操作流程和开发工作量。
系统统开发后目前已在我院多个检查科室进行试用,应用后影像诊断医师报告编辑效率明显得到提高,报告查询、汇总、分析变得异常简单快速,科室主任能及时了解设备使用情况和疾病发展情况以及漏费检查情况,对科室管理有很大的帮助。
报告档案也由原来的纸质档案转变为电子档案,该系统的应用受到了广大医技检查科室的一致好评。
但由于PowerBuilder对数据库开发较有优势但对文字处理和图像处理有一些的不足,再者作者本身技术有限,该系统在文字编辑排版和图像采集均有明显的缺陷,不能和PACS系统形成良好的接口;
文字排版不灵活,不能处理多义字的灵活选择等等。
今后将通过一些第三方控件来加强系统这些地方面的不足,最大满足临床工作的需要。
参考文献
[1]李华才.数字技术在临床医疗的研究与应用.中国数字医学.2009.4
(2):
44-45
[2]郑启迪,周松建.PowerBuilder9.0经典范例50讲.第一版.北京希望电子出版社.2005.2
[3]郭宝利,康海涛李冬冬.PowerBuilder9.0实用解析.第一版.电子工业出版社.2004.3
[4]陈卫平.心电信息管理系统的设计与实现.中国数字医学.2008.3(11):
40-41
[5]于德一刘云洲.PowerBuilder实用编程技术.第一版.中国水利水电出版社.2006.3
[6]马贵安,李明武.PowerBuilderWin32API程序设计.第一版.清华大学出版社.2004.8
[7]沙金,贾玉锋.PowerBuilder8.0编程百例通.第一版.科学出版社.2003.5
[8]张琼瑶.构建以患者为中心的大型综合性医院医学影像信息平台.中国数字医学.20094
(1):
56
[9]赵晨晖.医疗信息系统集成研究与实践.中国数字医学.2009.4
(1):
22
[10]祖学亮.医院综合考核信息系统的开发与应用.中国数字医学.2009.4
(1):
49