论文部分内容阅读
【摘 要】在开发新型农村合作医疗软件过程中,一个需要解决的问题是如何实现医院管理信息系统(HIS)和新农合软件的数据接口。本文介绍了一种基于PowerBuilder编程语言的接口方法,该方法能够自动或者手动把指定的数据从HIS数据库复制到新农合数据库,从而实现数据共享。
【关键词】HIS;新农合;PowerBuilder
中图分类号:TP18 文献标识码:A 文章编号:1009-8283(2009)03-0087-01
1 引言
随着我国新型农村合作医疗(简称新农合)事业的迅速发展和普及,对新型合进行全方面信息化管理的要求越来越迫切[1],各种新农合管理软件也应运而生。
由于大多数医院早在我国开始实施新农合制度以前,就已经建立好了自己的医院管理信息系统(简称HIS)软件,所以在开发和实施新农合管理软件过程中,必须要妥善解决HIS和新农合的数据接口问题。
2 设计和实现
医院工作人员通过HIS软件把病人(包括参加新农合和不参加新农合)的信息录入到医院HIS数据库中,这些信息包括病人基本信息、病人诊断信息、入院出院信息、费用记录等。当参加了新农合的病人需要报销时,就需要把这些数据从医院的HIS数据库传输到新农合数据库。
2.1 设计思路
为了给用户提供方便、灵活、强大的数据传输功能,接口软件应该具有自动传输、手动传输、定时传输、单个病人数据传输、批量病人数据传输的功能。自动传输是指每当有参加新农合的病人在医院办理出院结算后,其相关数据就会自动从HIS数据库传输到指定的新农合数据库中。手动传输是为了防止万一自动传输过程出现错误,用户可以启用手动传输,自行控制数据传输的细节。定时传输是指在指定的时间,把所有已经出院结算但是还没有传输到新农合数据库的病人数据进行传输。单个病人数据传输是指一次只把某个指定病人的数据传输到新农合,批量病人数据传输是指一次把符合某些条件的病人数据传输到新农合。
上述四种传输方式,有一个共同的核心功能,就是某个病人的数据传输。从面向对象的设计思想和软件复用的角度出发,设计了一个类n_patient_data_transporter,用来完成单个病人的数据传输。此类最重要的一个方法是of_run,将一个病人一次住院费用传输到新农合数据库中。方法有三个参数:
as_patient:病人ID
ai_visit :住院次数
b_overwrite:是否覆盖原有数据
2.2 定时传输的实现
在前面所述的各种数据传输过程中,从编程实现的角度来说,定时传输是最复杂的一种。下面以定时传输为例,来具体说明如何编码实现。
利用PowerBuilder中Window对象的Timer事件,可以实现定时传输的功能。在传输时,为了让用户知道传输的细节和成功与否,应该有明确的提示和记录。本文使用状态栏进行提示,并把传输的具体细节(时间、住院号、是否成功、错误信息等)记录到文本文件中。在具体实现时,可以使用PowerBuilder基础类库PFC[2]提供的服务,从而简化编程。
实现自动传输的关键代码片断如下。
inv_statusbar.of_modify(cs_data_status_id,log) //设置状态栏
inv_file_service.of_filewrite(cs_file_name,log+'~r~n') //记录日志
n=ds.retrieve(lastPatientTime) //获得最近出院的病人
for i=1 to n //对病人列表进行循环
patient=ds.getitemstring(i,'patient_id') //得到病人ID
visit=ds.getitemnumber(i,'visit_id') //得到住院次数
int result
result=worker.of_run( patient,visit,false) //进行数据传输
//以下代码记录传输结果或错误信息
if(result>=0) then
inv_statusbar.of_modify(cs_data_status_id,'成功结算一个病人:'+patient)
inv_file_service.of_filewrite(cs_file_name,patient+' 结算成功~r~n')
success_count++
elseif result<0 then
inv_statusbar.of_modify(cs_data_status_id,'一个病人结算失败:'+patient)
inv_file_service.of_filewrite(cs_file_name,patient+' 结算失败~r~n')
error_count++
end if
next
3 结论
本文介绍了一种基于PowerBuilder的HIS与新农合接口方法。该方法能够支持自动、手动、单个、批量的各种数据传输方式,具有较强的实用性。该方法已于2008年3月份成功应用于某医院与其县级新农合软件的接口。
参考文献:
[1]叶娟.我国新型农村合作医疗信息化建设的思考[J].科技创新导报,2009(2).
[2]李辉.PowerBuilder基础类库开发技术祥解[M].北京:电子工业出版社,2006.
【关键词】HIS;新农合;PowerBuilder
中图分类号:TP18 文献标识码:A 文章编号:1009-8283(2009)03-0087-01
1 引言
随着我国新型农村合作医疗(简称新农合)事业的迅速发展和普及,对新型合进行全方面信息化管理的要求越来越迫切[1],各种新农合管理软件也应运而生。
由于大多数医院早在我国开始实施新农合制度以前,就已经建立好了自己的医院管理信息系统(简称HIS)软件,所以在开发和实施新农合管理软件过程中,必须要妥善解决HIS和新农合的数据接口问题。
2 设计和实现
医院工作人员通过HIS软件把病人(包括参加新农合和不参加新农合)的信息录入到医院HIS数据库中,这些信息包括病人基本信息、病人诊断信息、入院出院信息、费用记录等。当参加了新农合的病人需要报销时,就需要把这些数据从医院的HIS数据库传输到新农合数据库。
2.1 设计思路
为了给用户提供方便、灵活、强大的数据传输功能,接口软件应该具有自动传输、手动传输、定时传输、单个病人数据传输、批量病人数据传输的功能。自动传输是指每当有参加新农合的病人在医院办理出院结算后,其相关数据就会自动从HIS数据库传输到指定的新农合数据库中。手动传输是为了防止万一自动传输过程出现错误,用户可以启用手动传输,自行控制数据传输的细节。定时传输是指在指定的时间,把所有已经出院结算但是还没有传输到新农合数据库的病人数据进行传输。单个病人数据传输是指一次只把某个指定病人的数据传输到新农合,批量病人数据传输是指一次把符合某些条件的病人数据传输到新农合。
上述四种传输方式,有一个共同的核心功能,就是某个病人的数据传输。从面向对象的设计思想和软件复用的角度出发,设计了一个类n_patient_data_transporter,用来完成单个病人的数据传输。此类最重要的一个方法是of_run,将一个病人一次住院费用传输到新农合数据库中。方法有三个参数:
as_patient:病人ID
ai_visit :住院次数
b_overwrite:是否覆盖原有数据
2.2 定时传输的实现
在前面所述的各种数据传输过程中,从编程实现的角度来说,定时传输是最复杂的一种。下面以定时传输为例,来具体说明如何编码实现。
利用PowerBuilder中Window对象的Timer事件,可以实现定时传输的功能。在传输时,为了让用户知道传输的细节和成功与否,应该有明确的提示和记录。本文使用状态栏进行提示,并把传输的具体细节(时间、住院号、是否成功、错误信息等)记录到文本文件中。在具体实现时,可以使用PowerBuilder基础类库PFC[2]提供的服务,从而简化编程。
实现自动传输的关键代码片断如下。
inv_statusbar.of_modify(cs_data_status_id,log) //设置状态栏
inv_file_service.of_filewrite(cs_file_name,log+'~r~n') //记录日志
n=ds.retrieve(lastPatientTime) //获得最近出院的病人
for i=1 to n //对病人列表进行循环
patient=ds.getitemstring(i,'patient_id') //得到病人ID
visit=ds.getitemnumber(i,'visit_id') //得到住院次数
int result
result=worker.of_run( patient,visit,false) //进行数据传输
//以下代码记录传输结果或错误信息
if(result>=0) then
inv_statusbar.of_modify(cs_data_status_id,'成功结算一个病人:'+patient)
inv_file_service.of_filewrite(cs_file_name,patient+' 结算成功~r~n')
success_count++
elseif result<0 then
inv_statusbar.of_modify(cs_data_status_id,'一个病人结算失败:'+patient)
inv_file_service.of_filewrite(cs_file_name,patient+' 结算失败~r~n')
error_count++
end if
next
3 结论
本文介绍了一种基于PowerBuilder的HIS与新农合接口方法。该方法能够支持自动、手动、单个、批量的各种数据传输方式,具有较强的实用性。该方法已于2008年3月份成功应用于某医院与其县级新农合软件的接口。
参考文献:
[1]叶娟.我国新型农村合作医疗信息化建设的思考[J].科技创新导报,2009(2).
[2]李辉.PowerBuilder基础类库开发技术祥解[M].北京:电子工业出版社,2006.