APP下载

出院带药处方监控报告系统的设计与实现

2018-09-13肖永平

实用医药杂志 2018年9期
关键词:视图短信金额

肖永平

开具合理处方是医院对医师的要求,也是医保检查工作的重要方面[1]。患者在出院时,往往需要带一些治疗用药,医师所开的出院带药处方,应该符合医保工作的要求。由于医院的住院医师站系统对限制大处方方面没有强制性措施,给监管造成难题。特别是大处方,往往随患者住院费用一起结算,医保办工作人员往往在患者结算完成后才能发现,做不到事前发现并及时干预[2-4]。为了在结算前对出院带药处方进行更加有效监管和干预,笔者所在医院开发了一套出院带药处方监控报告系统。

1 系统设计

1.1 系统设计思路 将系统从功能上划分,分为数据分析、结果记录、短信发送、辅助功能4个模块。数据分析模块从HIS系统中抽取医师所开的出院带药处方情况,对尚未结算的处方进行分析,形成报表,对超金额处方标红警示;结果记录模块将超金额处方的详细情况记录在数据库中,作为医师绩效考核的一个依据;短信发送模块从数据库表中查找尚未发送的警示信息并发送;辅助功能模块负责系统信息维护和数据统计,生成各类数据报表。系统的工作流程如图1所示。

图1 出院带药处方监控报告系统工作流程图

1.2 软件设计 系统的开发采用Power Builder语言,数据库依托“军卫一号”系统的数据库Oracle11g PowerBuilder,美国Sybase公司研制的基于C/S架构的集成开发工具,提供与当前流行的大型数据库的接口,通过ODBC与Oracle数据库相连。Oracle数据库是在数据库领域中一直处于领先地位的关系数据库,效率高、可靠性好[5,6]。 系统通过 DBMS(数据库管理系统)访问数据库中的数据,通过DDL(数据定义语言)和DML(数据操作语言),实现数据的插入、追加等操作。

系统在数据库中主要访问 SUPCON.DOCT_DRUG_PRESC_MASTER和SUPCON.DOCT_DRUG_PRESC_DETAIL两张数据库表,形成数据报告,同时建立Bp_Information(大处方数据记录)表,Bp_Information的数据结构如表1所示。

表1 Bp_Information数据字段设计表

1.3 硬件设计 系统对硬件要求不高,运行在普通台式机上即可,短信收发器是基于GSM方式进行短信收发的通信网关设备,将设备与计算机的串口连接,设备的后台数据库直接连接HIS系统,读取Bp_Information表中的数据记录,实现短信收发功能。

1.4 数据获取 出院带药处方数据存储在UPCON.DOCT_DRUG_PRESC_MASTER、SUPCON.DOCT_DRUG_PRESC_DETAIL两张表中,医院HIS系统中关联SUPCON.DOCT_DRUG_PRESC_MASTER、SUPCON.DOCT_DRUG_PRESC_DETAIL、DEPT_DICT和PAT_MASTER_INDEX四张表,通过建立视图获取数据,数据中包括处方信息、患者信息和主管医师信息等。

2 系统实现

2.1 视图建立 通过Power Builder的DBMS连接到Oracle11g数据库中,首先建立Group方式的数据视图d_cydy,视图要将已开处方但未收费的所有信息提取出来,包括开方科室、出院病号、出院诊断、开单医师、处方详单等信息,处方详单包括药品名称、规格、数量、单位、途径、频次、天数等信息,每一个处方计算出总金额,视图实现代码如下:

SELECT

"DEPT_DICT"."DEPT_NAME",//科室

"PAT_MASTER_INDEX"."NAME",//患者名字

"PAT_MASTER_INDEX"."IDENTITY",//身份

"DOCT_DRUG_PRESC_MASTER"."DIAGNO SE",//诊断

"DOCT_DRUG_PRESC_MASTER"."PRESCRIBED_BY_DOCT",//开单医师

"DOCT_DRUG_PRESC_DETAIL"."DRUG_NAME",//药品名称

……

"DOCT_DRUG_PRESC_DETAIL"."FREQUENCY",//频次

"DOCT_DRUG_PRESC_DETAIL"."DAYS",//天数

"DOCT_DRUG_PRESC_DETAIL"."PRICE",//金额

"DOCT_DRUG_PRESC_MASTER"."PRESC_DATE"//开单时间

FROM

"DOCT_DRUG_PRESC_DETAIL",

"DOCT_DRUG_PRESC_MASTER",

"DEPT_DICT",

"PAT_MASTER_INDEX"

WHERE……

(("DOCT_DRUG_PRESC_MASTER"."PRESC_

ATTR"='出院带药')AND

("DOCT_DRUG_PRESC_MASTER"."STATUS"='N')AND//尚未结算("DOCT_DRUG_PRESC_DETAIL"."PRESC_DATE">=sysdate-2 ))

建立一个累加字段对金额字段进行累加,SUM("DOCT_DRUG_PRESC_DETAIL"."PRICE"), 在字段的Text Color属性中对金额超出规定值的,将金额标红以提醒医保办工作人员。

2.2 数据窗口建立 在PB程序中建立dw_c数据窗口,关联视图d_cydy,将出院患者的出院带药处方信息以数据报表的形式显示,为实时掌握医师所开处方情况,系统定时从数据库中查询新开处方情况,可根据实际情况设定一个刷新时间timer(300),医保办人员对医师所开处方做到实时监控,如图2所示。

图2 出院带药监控报表

2.3 告警信息写入 当系统发现处方总金额超出设定值时,将该处方相关信息写入表Bp_Information中,Bp_Information表中存储的信息短信服务器会发送给开单医师,这个信息也会作为医师绩效考核的一个凭证,主要代码如下所示。

INSERT INTO"SUPCON"."."BP_INFORMATION"

("PRESC_NO",

"PRESC_DATE",

"DEPT_NAME",

"PRFESCRIBED_BY_DOCT",

"PATIENT_ID",

"VISIT_ID","COSTS",

"STATUS")

VALUES(…… );

commit;

初始记录时状态字段默认为0,当该信息已被发送时由短信发送程序将该字段置为1。

2.4 短信发送 短信发送程序每隔5 s查询数据库表Bp_Information,查找其中状态字段为0的记录,自动组合成一条短信,格式为:科室+开单医师+住院号+处方时间+处方号+总金额+附件内容。医师接受短信的手机号码存储在短信发送服务器中。

短信收发程序调用GSM短信收发器动态链接库中的函数实现短信的发送,发送成功后将该字段置1。其发送短信调用的函数为Sms_Send:

function Sms_Send (Sms_TelNum:string;Sms_Text:string):integer;stdcall;external'sms.dll';

3 应用效果

系统投入使用后,一共抓取超金额出院带药处方217张,发送短信217次,取得了不错的效果。一是医院的处方管理进一步规范。系统没运行前,医师开出院带药处方比较随意,也缺乏相应的监管手段,系统运行后,医师如开超金额处方,30 s内就会收到短信提示,同时此次行为被记录下来,影响了医师个人的绩效考核,医师开处方时更加谨慎,规范了医师的医疗行为。二是处方纠错的时效性。系统运行前,医保办人员往往在患者结算后才能发现超金额处方,这时已无法纠错。系统运行后,由于系统实时显示的是开处方后未结算的处方信息,医保办人员能够及时掌握,而且通过及时的短信提醒,医师能够在患者结算前纠正处方,给医师纠错提供了机会。三是医保管理工作水平进一步提高。由于超金额处方能够在结算前得到纠正,杜绝了医保结算中的类似行为,医院的医保工作得到进一步规范。

猜你喜欢

视图短信金额
2001年-2020年县级一般公共预算支出资金来源情况表
道歉短信
代发短信
5.3 视图与投影
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
立案
成交金额前10名营业部买入的前3只个股
一周资金净流出金额前20名个股