賴家聚 賴燕梅 劉焱鑫


摘要:本文從醫院HIS系統與廣西壯族自治區醫保、南寧市醫保結算平臺接口的應用需求出發,通過對軍衛一號系統項目唯一編碼進行優化處理,對醫保和HIS數據交換信息進行數據庫按需存儲,較傳統日志模式有很大提升,查找原因更加方便,同時總結了構建醫院省、市兩級醫保統一結算平臺的必要性和可行性,并給出具體的技術解決方案。
關鍵詞:醫保平臺;接口;動態鏈接庫;醫院信息系統
中圖分類號:TP311.52;R197 ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:B ? ? ? ? ? ? ? ? ? ? ? ? ? DOI:10.3969/j.issn.1006-1959.2019.12.005
文章編號:1006-1959(2019)12-0013-04
Abstract:Based on the application requirements of the hospital HIS system and the medical insurance of Nanning Autonomous Region and the medical insurance settlement platform of Nanning, this paper optimizes the unique coding of the No. 1 system project, and stores the medical insurance and HIS data exchange information on demand. The traditional log mode has been greatly improved, and the reason for finding it is more convenient. The necessity and feasibility of constructing a unified medical insurance platform for hospitals at the provincial and municipal levels are summarized, and specific technical solutions are given.
Key words:Medical insurance platform;Interface;Dynamic link library;Hospital information system
為進一步貫徹落實廣西壯族自治區以及南寧市人力資源和社會保障局深化醫療衛生體制改革的精神,切實提高和改進醫保患者就醫結算服務質量,醫?;颊咴诟鞫c醫院就醫時,只需支付個人應負擔的部分費用,其余費用由區、市醫保局和定點醫院結算。我院作為廣西壯族自治區、南寧市醫保定點醫療機構,為了實現醫院HIS系統與區、市醫保結算系統的無縫對接,我們對醫院軍衛一號系統(HIS)的門診收費、住院收費和出入院管理系統進行了大規模的改造,自行研發了區、市醫保統一結算接口程序,實現了醫?;颊叩尼t療費用實時結算;HIS系統與醫保信息系統通過接口實現數據共享,避免操作人員對同一信息的重復錄入,大大提高了工作效率,縮短患者的就醫結算時間,簡化了異地就醫和異地轉診申請登記、網上審批、費用審核與結算等業務經辦流程,更好地方便患者看病就醫[4]。
1廣西區醫保平臺概述
廣西壯族自治區醫保結算平臺與全國各省以及區內十多個地、市醫保辦互連,所有醫?;颊呔歪t結算系統按照統一的數據規則及交換標準,實現省、市兩級數據雙向交換。系統采用遠程實時交易模式,實現參保人在定點醫療機構前端直接刷卡結算,即參保人員在定點醫療機構就醫時,直接在醫療機構前端刷卡獲取人員信息,并與醫療費用明細數據一起,實時上傳到省級結算平臺,省級結算平臺將人員信息及醫療費用明細傳至原參保地的社保系統,原參保地醫療保險經辦機構根據人員信息、醫療費用明細信息、本地醫保政策計算出統籌基金和個人負擔費用后,通過省級結算平臺實時回傳至就醫地定點醫療機構。參保人員據此即時結算個人負擔費用,其統籌基金部分暫由定點醫療機構墊付,按結算規定定期與就醫地醫療保險經辦機構結算。再由省醫保局統一組織各級醫療保險經辦機構之間定期進行醫療保險異地就醫費用清算,省級結算平臺系統網絡結構示意圖見圖1。
2南寧市醫保平臺概述
南寧市醫保結算平臺實現市內醫保辦互連,全市醫?;颊呔歪t結算系統按照統一的數據規則及交換標準,實現市醫保患者直接刷卡結算、醫療保險經辦機構根據人員信息、醫療費用明細信息、醫保政策計算出統籌基金和個人負擔費用后,直接補償患者,減少患者就醫排隊時間,搞高就醫結算效率。
3醫院HIS系統和醫保平臺的接口實施方案
3.1實施步驟 ?醫院與醫保結算平臺的接口建設,分四步實施:第一步,搭建軟、硬件環境,通過醫保專網光纖方式建立好醫院與區、市平臺之間的網絡連接;第二步,準備好基礎數據,醫院按照醫保要求將本院三大目錄庫導入到平臺并與區、市醫保目錄分別做好匹配對照;第三步,應用軟件開發,根據接口要求做好HIS軟件升級改造;第四步,部署實施系統,醫院做好軟件測試連調工作。
3.2接口方案的設計 ?通過對區、市醫保中心提供的接口文檔的分析,醫保需要醫院HIS系統采用調用嵌入式DLL鏈接庫完成區、市醫保業務的接口方案,即將區、市醫保中心提供的動態鏈接庫嵌入到醫院的信息系統中,由動態鏈接庫中的函數集幫助醫院的HIS系統完成醫保待遇的計算和數據的存儲與傳輸。當有醫保串都進行結算交易時,由HIS系統調用動態連接庫中的函數將用戶發出的交易信息傳送到醫保中心庫,動態鏈接庫中的函數全部采用被動調用的方式操作數據,系統交易流程調用圖如圖2所示。動態鏈接庫操作的數據只限制在醫保前置機數據庫中的數據,它不會對原HIS數據庫的數據造成任何影響[2]。醫保中心提供的動態庫包括辦理業務及查詢在內的共68個接口調用功能,各功能由醫院的HIS系統按接口要求調用入參、出參的方式來實現。根據接口業務需求,在后臺數據庫中創建了相關數據表、增加了部分表的字段,同時對我的門診收費、住院登記和住院收費等軟件進行了改造。
3.3設計亮點 ?醫院HIS項目編碼唯一性問題,從區、市醫保接口文檔分析,區、市醫保不同平臺的接口都需要做匹配,根據以往經驗,都需要匹配2次,而且使用過程中存在項目編碼不唯一問題,因為患者在住院過程中,同一個項目存在調價的情況,原有接口都需要人為調價處理,鑒于以往經驗,決定對軍衛系統項目編碼進行唯一性處理,建立統一的序列號,通過價表分類編碼+序列號實現項目的唯一性,具體實現代碼如下:
-- Create sequence
create sequence COMM.SEQ_PRICE_LIST_ID
minvalue 1
maxvalue 9999999
start with 1
increment by 1
cache 5
cycle;
create or replace trigger COMM.trg_priceList_newid
before insert on comm.price_list
for each row
declare
v_no varchar2(10);
v_seq integer;
begin
select comm.SEQ_price_list_ID.NEXTVAL into v_seq from dual;
v_no := :new.item_class || lpad(v_seq,7,'0');
:new.STD_CODE_1 := v_no;
end trg_priceList_newid;
通過觸發器在價表新增或調價的時候自動插入進去,原有的歷史數據進行一次初始化即可完成所有的價表唯一性,在系統寫入的時候通過觸發器直接寫入到費用明細表,這樣在費用明細上傳就能找到項目對應的唯一編碼,解決原來系統存在人為修改費用明細表價格的情況。
醫院HIS與醫保平臺交換平臺數據庫,傳統的醫院HIS與醫保接口之間不存在日志記錄或者通過文本方式實現,存在長時間積累,日志很多,不好查找或記錄不全的情況,而且一旦患者結算出現問題,HIS公司和醫保平臺公司之間經?;ハ喑镀?,增加信息科工作量,通過標準化獨立的交換平臺庫,將HIS和醫保的每一步出入參數都通過標準的XML保存起來,而且可以通用界面程序直接查看,簡單明了的顯示每個參數,對于解決問題非常有實際意義,系統投入使用以來很有幫助意義,得到信息科和醫保科的一致認可,具體代碼如下。
yinhaiobject.yh_interface_call(BusinessID ,Ctrlxml,Dataxml,ref Outputxml,ref Appcode,ref Appmsg)
if appcode < 0 then
ls_output ="取消費用上傳辦理失敗!" + appmsg
EXCEP_FLAG ='0'
ls_memo =BusinessID + '-"取消費用上傳返回代碼:'+string(appcode) + ',返回值:' + appmsg
insert into ybuser.interface_message(INTERFACE_TYPE,COMPUTER_ID,POP_MESSAGE,MEMO,OPERATOR_NO,oper_date,EXCEP_FLAG)
values('QYB',:gs_ip,:Dataxml,:ls_memo,:is_usercode,:ldt_sys,:EXCEP_FLAG)
using sqlca;
commit using Sqlca;
return (-1)
end if
ls_memo =BusinessID + '-"取消費用上傳返回代碼:'+string(appcode) + ',返回值:' + outputxml
insert into ybuser.interface_message(INTERFACE_TYPE,COMPUTER_ID,POP_MESSAGE,MEMO,OPERATOR_NO,oper_date,EXCEP_FLAG)
values('QYB',:gs_ip,:Dataxml,:ls_memo,:is_usercode,:ldt_sys,:EXCEP_FLAG)
using sqlca;
commit using Sqlca;
3.4數據傳輸格式 ?從目前的發展趨勢和標準化的角度考慮,XML是一個最優的選擇,區醫保接口數據傳輸采用XML作為傳輸數據格式, XML數據交換模型用于在不同系統間進行信息交換時封裝,交換信息內容。數據傳輸報文的全部內容封裝在 XML報文中,采用UTF-8字符集。請求類XML報文使用
3.5 HIS的改造 ?基于我院HIS系統的開發平臺,開發工具采用Sybase PowerBuiIder 11.0(簡稱PB 11.0)。根據接口文檔所提供的接口函數,將功能進行了封裝,在處理業務功能時只需要調用接口對象的函數即可完成整個操作。如門診收費模塊中接口系統通過調用DLL,獲取省醫保信息平臺中的患者信息進行醫保登記, 接口程序中先將患者的費用明細傳入區、市醫保平臺,再醫保端進行預結算,然后與HIS系統結算數據進行比較,當費用金額一致時即可進行正式結算[5]。以門診收費接口系統為例,在患者進行結算時,源代碼如下。
// 醫保交易開始>>>>>>>>>>>>>>>>
string ls_yb_comm //醫保結算出參
long ?ll_aucheck
string ls_err
ds_yb_blockage.SetItem(1,'class',dw_patient.GetItemString(1,'med_class')) //醫療類別
dw_yb_clinic.SetItem(1,'medical_class',dw_patient.GetItemString(1,'med_class'))
dw_yb_clinic.SetItem(1,'yb_sysdate',String(idt_now,'YYYYMMDDHHMMSS'))
dw_yb_clinic.SetItem(1,'charge_type','門診')
dw_yb_clinic.SetItem(1,'medical_class',dw_patient.GetItemString(1,'med_class'))
dw_yb_clinic.SetItem(1,'rcpt_no',is_yb_rcptno)
dw_yb_clinic.SetItem(1,'rcpt_flag',0)
string ?l_his_name
l_his_name =dw_patient.GetItemString(1,"name")
if ?is_yb_readname <> ?l_his_name then
IF messagebox('錯誤','醫??ㄈ藛T:[' +is_yb_readname +']與院內人員:['+l_his_name+']系統檢測姓名不一致。'+'~r~n'+'是否繼續?',Exclamation!, YESNO!, 2) =2 ?THEN
return -1
end if
end if
//醫保登記
if not ib_yb_regedit then
if wf_yb_reg() =- 1 then
return -1
end if
end if
//醫保生成明細上傳
wf_yb_fee()
if ib_yb_feeupload then
wf_yb_fee_cancel()
end if
string ls_output,ls_ret
for ll_i =1 to ds_yb_fee.rowcount()
li_ret =n_yb_proxy.of_upload_currency('2310',ds_yb_fee,ll_i,1,ls_output) // 2310 醫保上傳交易碼
if ?li_ret <0 then
wf_yb_fee_cancel()
return -1
end if
next
ib_yb_feeupload =true //醫保費用已上傳
//生成結算數據 ds_yb_comm
wf_yb_comm()
//醫保預結算
if n_yb_proxy.of_upload_currency('2420',ds_yb_comm,1,1,ls_yb_comm) <0 then
wf_yb_fee_cancel()
end if
//臨時存放預結算的返回數據 ds_yb_balance_adv
wf_yb_balance_adv(ls_yb_comm)
//總額比較 醫??傤~與his結算總額
dec ldec_his,ldec_yb
ldec_his =round(dw_bill_detail.object.compute_4[1],2)
ldec_yb =round( ?ds_yb_balance_adv.getitemdecimal(1,'a011'),2 ?)
if ldec_his <>ldec_yb then
wf_yb_fee_cancel()
messagebox('金額不等','院方計價總費用'+string(ldec_his)+'與醫保中心返回的總費用'+string(ldec_yb)+'不相等',stopsign?。?/p>
return -1
end if
wf_yb_calc_pay_money()
end if
4總結
醫院自2018年12月起,利用自行開發的接口軟件實現了與廣西壯族自治區、南寧市社會醫療保險中心醫保的數據傳輸交易,共有200多人通過此軟件直補結算。醫保接口的改造成功不僅方便了醫?;颊叩木歪t,提高了醫院的服務水平,而且還規范了醫院醫保患者的管理, 明顯縮短醫?;颊咴卺t院的就診時間,提高患者就診效率,從根本上解決了醫?;颊咴卺t院的“三長一短”問題,并最終推進醫院現代化管理進程做出一定貢獻。
參考文獻:
[1]郭晗,單磊敬,李伯祥.新農合系統與HIS出院即報接口的開發與應用[J].醫療衛生裝備,2014,35(2):57-59.
[2]夏慧.醫院HIS系統與省醫保平臺接口的設計與實現[J].中國數字醫學,2015(6):108-110.
[3]孫煒臻,張麗杰,楊秋云,等.異地醫保實時結算平臺設計與實現[J].中國數字醫學,2016,11(5):92-94.
[4]郝良軍.醫院信息系統在醫院管理中的應用價值研究[J].中國藥物與臨床,2018,18(7):1244-1245.
[5]汪新建,楊孝光,王曉飛.社會醫療保險統一管理平臺的研發與應用[J].中國數字醫學,2018,13(3):102-103.
收稿日期:2019-3-22;修回日期:2019-4-2
編輯/成森