




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案廣州華南資訊科技2021-3-14TEL:FAX:- 2 -更新歷史編寫人日期版本號(hào)變更內(nèi)容2007.121.002008-3-311.013.3.1 增加 syfs 字段,3.3.7 增加 cyzd1,增加功能號(hào) 5001,50022008-4-11.02增加功能號(hào) 50032008-4-81.03修改慢門診信息改為不傳 tzdxsph,不用數(shù)據(jù)集返回,返回2008-4-111.045003 去掉慢不能結(jié)算,慢可以結(jié)算2008-4-161.051.9.2 慢門診登記去掉 bzdm 必錄2008-4-171.061.9.3 門診登記增加 CYZDGJ
2、DM,cyzd 增加長(zhǎng)度2008-4-221.07更改結(jié)算單模式,相關(guān)打印接口字段有所更改2008-5-91.082004 住院結(jié)算返回添加 SYFS,BFZLX,TESL,JBYLFDZF慢登記 BZDM 非必錄2008-5-131.09修改 2004,2005,3002,3003,4002,4003 返回結(jié)果集里統(tǒng)一增加 fldm 字段2008-5-281.10處方項(xiàng)目1302出 XYBZ,SHBZ,SHR,,新增加費(fèi)用審核功能70012008-6-111.11功能號(hào) 2004,2005,3002,3003,4002,4003 新增加返回字段DWDJZH(登記證號(hào))2009-1-121.1
3、2功能號(hào) 2004,2005,3002,3003,4002,4003 新增加返回字段DETBGS(大額投保公司)2009-11-121.131.7 代碼參數(shù)說明(新增參數(shù))。功能號(hào) 2004,2005,3002,3003, 4002,4003 新增返回字段 SQMC(社區(qū)名稱),JDXX(就讀學(xué)校)。功能號(hào) 4003 新增返回字段 JMFY(減 用),YFQFJE(已付起付金額)2010-04-071.142004,2005 新增返回字段 ECBC(二次補(bǔ)償費(fèi)用)2013-09-251.151401 新增功能點(diǎn) 就診未審批特殊待遇2013-12-151.162004,2005,3002,300
4、3 增加商保統(tǒng)籌支付 1 字段(居保大?。┫宸薪鸨P畔⑾到y(tǒng)與HIS 系統(tǒng)信息交換方案目錄概述4襄樊市勞動(dòng)和保障信息系統(tǒng)簡(jiǎn)介4第一章1.11.1.11.1.21.1.3應(yīng)用軟件現(xiàn)狀4系統(tǒng)建設(shè)目標(biāo)4系統(tǒng)總體51.2信息交換方案概述5第二章DLL 接口函數(shù)62.1使用說明62.1.1 運(yùn)行環(huán)境62.2HNBridge.dll 的函數(shù)說明62.2.1 Initialize62.2.2 Release72.2.3 CreateInstace72.2.4 SetParam72.2.5 InsertDataSet82.2.6 InsertRow82.2.7 SetField82.2.8 EndRow92.
5、2.9 EndDataSet92.2.10 Run92.2.11 GetParam102.2.12 LocateDataSet102.2.13 GetRowSize102.2.14 NextRow112.2.15 GetCurrentRow112.2.16 GetColSize112.2.17 GetFieldValue112.2.18 DestroyInstance122.2.19 GetSysMessage122.3DLL 接口函數(shù)調(diào)用順序122.4程序中接口函數(shù)的定義132.4.1 DLL 接口函數(shù)在 PowerBuilder 中為全局函數(shù)132.4.2 HNBridge.dll 調(diào)用示
6、例14第三章接口功能編號(hào)及功能描述18代碼參數(shù)說明193.13.23.2.13.2.23.2.3功能21基本資料120121【可選】參?!究蛇x】個(gè)人繳費(fèi)信息【1202】.23【可選】個(gè)人就醫(yī)資料信息130124廣州華南資訊科技2021-3-14TEL:FAX:- 3 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案3.2.4 【可選】處方信息【1302】263.3業(yè)務(wù)辦理功能273.3.13.3.23.3.33.3.43.3.53.3.63.3.73.3.83.3.9【必選】住院登記200132【必選】慢門診登記300133【必選】普通門診登記400134【必選】記帳處方項(xiàng)目傳送200236【必
7、選】出院登記200337【必選】住院費(fèi)用結(jié)算200438【必選】住院費(fèi)用結(jié)算單打印200540【必選】慢【必選】慢門診結(jié)算300244門診結(jié)算單打印3003463.3.10 【必選】普通門診結(jié)算4002483.3.11 【必選】門診結(jié)算單打印4003503.4用戶登錄553.4.13.4.2醫(yī)院登錄55醫(yī)院口令修改56第四章醫(yī)院需要完成的工作57HIS 系統(tǒng)改造57權(quán)限說明584.1第五章第一章概述1.1 襄樊市勞動(dòng)和保障信息系統(tǒng)簡(jiǎn)介1.1.1 應(yīng)用軟件現(xiàn)狀目前,各定點(diǎn)醫(yī)院(以下簡(jiǎn)稱定點(diǎn)醫(yī)療機(jī)構(gòu))已有各自的信息管理系統(tǒng),定點(diǎn)醫(yī)院利用已有的社保網(wǎng)于醫(yī)保中心數(shù)據(jù)庫(kù)進(jìn)行。1.1.2 系統(tǒng)建設(shè)目標(biāo)實(shí)現(xiàn)
8、醫(yī)療保險(xiǎn)的統(tǒng)一管理,同時(shí)更容易適應(yīng)政策的變化。廣州華南資訊科技2021-3-14TEL:FAX:- 4 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案1.1.3 系統(tǒng)總體網(wǎng)絡(luò)系統(tǒng):市內(nèi)各定點(diǎn)醫(yī)院通過襄樊市社保網(wǎng)與醫(yī)保中心應(yīng)用服務(wù)器實(shí)現(xiàn)實(shí)時(shí)聯(lián)接及交換數(shù)據(jù)功能;市外定點(diǎn)醫(yī)院可通過 ADSL 或時(shí)業(yè)務(wù)處理。撥號(hào)與醫(yī)保中心端進(jìn)行聯(lián)接,實(shí)現(xiàn)實(shí)定點(diǎn)醫(yī)院端系統(tǒng):HIS 系統(tǒng)統(tǒng)一調(diào)用接口動(dòng)態(tài)庫(kù),實(shí)現(xiàn)醫(yī)保待遇實(shí)時(shí)計(jì)算。1.2 信息交換方案概述廣州華南資訊科技2021-3-14TEL:FAX:- 5 -入/出院登襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案醫(yī)療保險(xiǎn) DLL 系統(tǒng)(包含 HNBridge.dll 和
9、 Cipher.dll、HNBridge.dll 和 Cipher.dll 的PowerBuilder 調(diào)用實(shí)例)是由廣州華南資訊科技功能調(diào)用接口。研發(fā),為 HIS 系統(tǒng)提供醫(yī)保系統(tǒng)的該系統(tǒng)HNBridge.dll 和Cipher.dll 是為HIS 系統(tǒng)提供的調(diào)用動(dòng)態(tài)庫(kù),是采用VC+ 6.0MFC 編程實(shí)現(xiàn)的;醫(yī)院 HIS 只需調(diào)用 HNBridge.dll,不需調(diào)用 Cipher.dll,Cipher.dll 是HNBridge.dll 的支持庫(kù)。該系統(tǒng)的全部源代碼及其文檔屬?gòu)V州華南資訊科技所有。本文醫(yī)院系統(tǒng)如何與醫(yī)保系統(tǒng)交互進(jìn)行介紹,主要是 DLL 動(dòng)態(tài)調(diào)用說明。本文不對(duì)醫(yī)保中心端的實(shí)現(xiàn)
10、進(jìn)行描述。庫(kù)的功能介紹、第二章DLL 接口函數(shù)1.3 使用說明1.3.1 運(yùn)行環(huán)境環(huán)境描述llllWindows 2000/XP支持 PowerBuilder、Visual Basic、DelphiMSXML3 以上版本的 MSXML器測(cè)試環(huán)境:IP:10.131.7.9,端口:9090安裝對(duì)于操作系統(tǒng)中沒有沒有 MSXML3 以上版本的 MSXML上版本。器的需安裝 MSXML3 以1.4HNBridge.dll 的函數(shù)說明1.4.1 Initialize功能定義HRESULT WINAPI Initialize(LPTSTR svrIP, USHORTRecvBufSize)功能描述svr
11、Port, int SndBufSize,int在調(diào)用 DLL 前,初始化調(diào)用環(huán)境變量。整個(gè)調(diào)用工程只需調(diào)用該函數(shù)一次即可。參數(shù)說明LPTSTR svrIP:服務(wù)器的地址。廣州華南資訊科技2021-3-14TEL:FAX:- 6 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案USHORT svrPort:SndBufSize:socket服務(wù)器的端口。緩存大小。RecvBufSize:socket 接收緩存大小。返回值HRESULT 1 表示;-11 表示系統(tǒng)初始化失敗。1.4.2 Release功能定義HRESULT WINAPI Release()功能描述在完成全部 DLL 提供的功能函數(shù)
12、后,調(diào)用該函數(shù)對(duì) DLL 進(jìn)行參數(shù)說明無(wú)返回值。HRESULT 1 表示;-12 表示系統(tǒng)操作失敗。1.4.3 CreateInstace功能定義HANDLE WINAPI CreateInstace()功能描述創(chuàng)建一個(gè)功能調(diào)用實(shí)例。在進(jìn)行一個(gè)新的功能調(diào)用前必須執(zhí)行該操作,以取得調(diào)用的處理句柄。返回的句柄將成為其他功能調(diào)用的參數(shù)。參數(shù)說明無(wú)返回值HANDLE 大于 0 的 LONG 型值表示創(chuàng)建;-13 表示創(chuàng)建失敗。1.4.4 SetParam功能定義HRESULT WINAPI SetParam(HANDLE pDataHandle,LPCTSTR paramName, LPCTSTR p
13、aramValue)功能描述提供功能調(diào)用的參數(shù)組,比如功能號(hào)以及其他功能的調(diào)用參數(shù)。(功能號(hào)的 paramName規(guī)定為“FN”)參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPCTSTR paramName:參數(shù)名稱。LPCTSTR paramValue:參數(shù)值。返回值HRESULT返回 1;失敗返回-14,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()廣州華南資訊科技2021-3-14TEL:FAX:- 7 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案取得。1.4.5 InsertDataSet功能定義HR
14、ESULT WINAPI InsertDataSet(HANDLE pDataHandle)功能描述一個(gè)數(shù)據(jù)集,為裝入數(shù)據(jù)作準(zhǔn)備。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值HRESULT取得。返回 1;失敗返回-15,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()1.4.6 InsertRow功能定義HRESULT WINAPI InsertRow(HANDLE pDataHandle);功能描述一行,為裝入一行數(shù)據(jù)作準(zhǔn)備。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) Cr
15、eateInstace()創(chuàng)建。返回值HRESULT取得。返回 1;失敗返回-16,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()1.4.7 SetField功能定義HRESULT WINAPI SetField(HANDLE pDataHandle,LPCTSTR fieldName, LPCTSTR fieldValue)功能描述在當(dāng)前行參數(shù)說明一列。HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPCTSTR fieldName:列名稱。LPCTSTR fieldValue:列值。返回值HRESULT取得返回 1;失
16、敗返回-17,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()廣州華南資訊科技2021-3-14TEL:FAX:- 8 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案1.4.8 EndRow功能定義HRESULT WINAPI EndRow(HANDLE pDataHandle,Long rowID)功能描述結(jié)束當(dāng)前行,把當(dāng)前行參數(shù)說明到當(dāng)前的數(shù)據(jù)集中。HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。Long rowID:賦予當(dāng)前行的行號(hào)。返回值HRESULT取得。返回 1;失敗返回-18,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetS
17、ysMessage()1.4.9 EndDataSet功能定義HRESULT WINAPI EndDataSet(HANDLE pDataHandle,LPCTSTR name)功能描述結(jié)束當(dāng)前數(shù)據(jù)集,把當(dāng)前數(shù)據(jù)集的各功能規(guī)定)到數(shù)據(jù)包中。(數(shù)據(jù)集名稱規(guī)定具體請(qǐng)參考第三章參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建LPCTSTR name:賦予當(dāng)前數(shù)據(jù)集的名字。返回值HRESULT取得。返回 1;失敗返回-19,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()1.4.10 Run功能定義HRESULT WINAPI
18、Run(HANDLE pDataHandle);功能描述運(yùn)行調(diào)用實(shí)例。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值HRESULT 大于 0 表示, -20 表示調(diào)用中 DLL 本身發(fā)生異常,詳細(xì)的錯(cuò)誤信息也可以通過調(diào)用 GetSysMessage()取得。注意:(1) 服務(wù)端發(fā)生異常但 DLL 本身正常執(zhí)行時(shí) HRESULT 大于 0;(2) 要獲取服務(wù)端返回的返回值(FHZ) 和返回信息(MSG) 需通過下面的廣州華南資訊科技2021-3-14TEL:FAX:- 9 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案Ge
19、tParam(HANDLE pDataHandle, LPCTSTR paramName,LPTSTR ParamValue, UINT nMaxValueLenth) 獲取參數(shù)名稱(paramName) 為“ FHZ”和參數(shù)名稱(paramName)為“MSG”的參數(shù)值得到的,而不是通過調(diào)用 GetSysMessage()取得,GetSysMessage()只用來獲取 DLL 本身發(fā)生的異常。1.4.11 GetParam功能定義HRESULT WINAPI GetParam(HANDLE pDataHandle,LPCTSTR paramName, LPTSTR ParamValue, U
20、INT nMaxValueLenth)功能描述該接口函數(shù)用于取返回參數(shù)。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPCTSTR paramName:返回變量的參數(shù)名稱。LPTSTR ParamValue:保存返回值的變量。UINT nMaxValueLenth:變量 ParamValue 的分配內(nèi)存字節(jié)數(shù)。返回值HRESULT 1 表示執(zhí)行;-21 表示執(zhí)行異常,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用GetSysMessage()取得。1.4.12 LocateDataSet功能定義HRESULT WINAPI LocateData
21、Set(HANDLE pDataHandle,LPCTSTR name)功能描述返回的數(shù)據(jù)集。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPCTSTR name:要的數(shù)據(jù)集的名稱。返回值HRESULT 1 表示執(zhí)行GetSysMessage()取得。;-22 表示執(zhí)行異常,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用1.4.13 GetRowSize功能定義HRESULT WINAPI GetRowSize(HANDLE pDataHandle)功能描述該接口函數(shù)用于取當(dāng)前數(shù)據(jù)集的數(shù)據(jù)行數(shù)。參數(shù)說明HANDLE pDataHandle:功能
22、調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值廣州華南資訊科技2021-3-14TEL:FAX:- 10 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案HRESULT 當(dāng)前數(shù)據(jù)集的數(shù)據(jù)行數(shù),大于或等于 0 表示執(zhí)行詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()取得。;-23 表示執(zhí)行異常,1.4.14 NextRow功能定義HRESULT WINAPI NextRow(HANDLE pDataHandle)功能描述將當(dāng)前數(shù)據(jù)集的指針移到下一行。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返
23、回值HRESULT 下一行的行號(hào),大于或等于 0 表示執(zhí)行表示執(zhí)行常,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用 GetSysMessage()取得。;-24 表示執(zhí)行異1.4.15 GetCurrentRow功能定義HRESULT WINAPI GetCurrentRow (HANDLE pDataHandle)功能描述得到當(dāng)前行的實(shí)際行號(hào)。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值HRESULT 當(dāng)前行的實(shí)際行號(hào),大于 0 表示誤信息也可以通過調(diào)用 GetSysMessage()取得。, -25 表示調(diào)用中發(fā)生異常,詳細(xì)的錯(cuò)1.
24、4.16 GetColSizeHRESULT WINAPI GetColSize(HANDLE pDataHandle)功能描述該接口函數(shù)用于取當(dāng)前數(shù)據(jù)集的數(shù)據(jù)列數(shù)。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值HRESULT 大于 0 表示,此時(shí) HRESULT 的值即列數(shù), -26 表示調(diào)用中發(fā)生異常,詳細(xì)的錯(cuò)誤信息也可以通過調(diào)用 GetSysMessage()取得。1.4.17 GetFieldValue功能定義HRESULT WINAPI GetFieldValue(HANDLE pDataHandle, LPC
25、TSTR name, LPTSTR value, UINT nMaxValueLenth)廣州華南資訊科技2021-3-14TEL:FAX:- 11 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案功能描述得到當(dāng)前行的指定列的值。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPCTSTR name:待取數(shù)據(jù)的列名。LPTSTR value:保存列值的變量。UINT nMaxValueLenth:為保存列值的變量分配的內(nèi)存字節(jié)數(shù)。返回值HRESULT 大于 0 表示用 GetSysMessage()取得。,-27 表示調(diào)用中發(fā)生
26、異常,詳細(xì)的錯(cuò)誤信息也可以通過調(diào)1.4.18 DestroyInstance功能定義HRESULT WINAPI DestroyInstance(HANDLE pDataHandle)功能描述功能函數(shù)調(diào)用句柄。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。返回值HRESULT返回 1;-31 表示調(diào)用中發(fā)生異常,詳細(xì)的錯(cuò)誤信息可以通過調(diào)用GetSysMessage()取得。1.4.19 GetSysMessage功能定義HRESULT WINAPI GetSysMessage(HANDLE pDataHandle, LPTST
27、R pMessage, UINT nMaxMessage)功能描述獲取詳細(xì)的系統(tǒng)信息。通過該函數(shù)可以獲取功能調(diào)用的返回信息;如果系統(tǒng)發(fā)生異常, 則返回最后一次錯(cuò)誤的出錯(cuò)信息。參數(shù)說明HANDLE pDataHandle:功能調(diào)用的處理句柄,由接口函數(shù) CreateInstace()創(chuàng)建。LPTSTR pMessage:保存系統(tǒng)信息的變量。UINT nMaxMessage:變量 pMessage 的分配內(nèi)存字節(jié)數(shù)。返回值HRESULT返回 1;否則,返回-32 表示執(zhí)行失敗。1.5 DLL 接口函數(shù)調(diào)用順序1、 調(diào)用 Initialize()接口函數(shù)初始化系統(tǒng)環(huán)境變量。該函數(shù)只在系統(tǒng)調(diào)用前,調(diào)用
28、一次即可; 除非系統(tǒng)的操作員變更。2、 系統(tǒng)功能調(diào)用廣州華南資訊科技2021-3-14TEL:FAX:- 12 -襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案1) 調(diào)用 CreateInstace()創(chuàng)建調(diào)用處理句柄,以后所有作句柄所指向的處理模塊處理。2) 循環(huán)調(diào)用 SetParam()傳入所有單項(xiàng)數(shù)據(jù)。3) 如果需要傳入數(shù)據(jù)集時(shí),先調(diào)用 InsertDataSet()創(chuàng)建一個(gè)數(shù)據(jù)集,再調(diào)用 InsertRow()該調(diào)用的全部操作均將由該操創(chuàng)建一行,然后循環(huán)調(diào)用 SetField()將當(dāng)前行的列,然后調(diào)用 EndRow()將當(dāng)前行當(dāng)前數(shù)據(jù)集,類似地循環(huán)創(chuàng)建行和賦列值并將行當(dāng)前數(shù)據(jù)集,當(dāng)前數(shù)據(jù)
29、集的行 完后調(diào)用 EndDataSet()結(jié)束當(dāng)前行,如果有多個(gè)數(shù)據(jù)集,則再類似地循環(huán)處理。4) 當(dāng)通過步驟 2)、3)將全部功能函數(shù)所需的全部參數(shù)后,即可調(diào)用 Run ()接口函數(shù), 用以調(diào)用對(duì)應(yīng)的功能。調(diào)用 Run()完成后,要獲取服務(wù)端返回的返回值(FHZ)和返回信息(MSG),請(qǐng)使用 getParam()從返回參數(shù)中獲取,其對(duì)應(yīng)的參數(shù)名分別是“FHZ” 和“MSG”。5) 循環(huán)調(diào)用用 getParam()獲取返回的單項(xiàng)數(shù)據(jù)。6) 對(duì)于返回的響應(yīng)數(shù)據(jù)中有數(shù)據(jù)集的,先調(diào)用 LocateDateSet()到目標(biāo)數(shù)據(jù)集,此時(shí)指針指向數(shù)據(jù)集的第一行,再調(diào)用 GetRowSize()取到對(duì)應(yīng)數(shù)據(jù)集
30、的數(shù)據(jù)行數(shù),然后根據(jù)行數(shù)開始循環(huán) 所有的行,先調(diào)用 GetColSize()取到當(dāng)前行的列數(shù),再循環(huán)調(diào)用 GetFieldValue()獲取當(dāng)前行的各列值,取完當(dāng)前行的列值后調(diào)用 NextRow()到下一行,然后調(diào)用 GetColSize()取到當(dāng)前行的列數(shù),再循環(huán)調(diào)用 GetFieldValue()獲取當(dāng)前行的各列值,類似地去循環(huán)完數(shù)據(jù)集的所有行。在排序等情況下如果需要本行在數(shù)據(jù)庫(kù)返回的結(jié)果集中的實(shí)際行號(hào)調(diào)用 GetCurrentRow()即可獲得實(shí)際行號(hào)。7) 取完響應(yīng)數(shù)據(jù)后調(diào)用 DestroyInstance ()銷毀實(shí)例。8) 當(dāng)完成全部系統(tǒng)調(diào)用后,調(diào)用 Release ()接口函數(shù)D
31、LL 占用的。9) 以上函數(shù)調(diào)用過程中如果調(diào)用的返回值 HRESULT 的值小于 0,則 DLL 本身發(fā)生了異常,此時(shí)可以調(diào)用 GetSysMessage()獲取異常信息。10) 另外,登錄時(shí)需傳入加密了的登錄口令(即 PWD 參數(shù)的值是口令的密文),登錄口令的密文可通過調(diào)用EncryptWithCipher 函數(shù)獲得一個(gè) 32 位長(zhǎng)的 16 進(jìn)制字符串形式的密文。1.6 程序中接口函數(shù)的定義1.6.1 DLL 接口函數(shù)在 PowerBuilder 中為全局函數(shù)廣州華南資訊科技2021-3-14TEL:FAX:- 13 -FUNCTION Long Initialize(string svrI
32、P, Long svrPort, int SndBufSize,int RecvBufSize) LIBRARY"HNBridge.dll"FUNCTION Long Release() LIBRARY "HNBridge.dll" FUNCTION Long CreateInstace() LIBRARY "HNBridge.dll"FUNCTION Long SetParam(Long pDataHandle,String paramName, String paramValue)LIBRARY "HNBridge.dl
33、l"FUNCTION Long InsertDataSet(Long pDataHandle) LIBRARY "HNBridge.dll" FUNCTION Long InsertRow(Long pDataHandle) LIBRARY "HNBridge.dll"FUNCTION Long SetField(Long pDataHandle,String fieldName, String fieldValue) LIBRARY "HNBridge.dll"FUNCTION Long EndRow(Long pData
34、Handle,Long rowID) LIBRARY "HNBridge.dll"襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案1.6.2 HNBridge.dll 調(diào)用示例示例一:登錄廣州華南資訊科技2021-3-14TEL:FAX:- 14 -/調(diào)用 EncryptWithCipher()加密口令的示例(暫時(shí)用明文) String ls_encpwd = Space(32)/HnHisDll.EncryptWithCipher(ll_handle,"a",ls_encpwd,32)/對(duì)口令加密得到密文 ls_encpwdlong ll_rtn = -
35、1Stringls_yybh='1000' Stringls_user=rmyy/創(chuàng)建調(diào)用實(shí)例ll_rtn=HnHisDll.Initialize(ls_svrIP,lu_port,li_sndBufSize,li_recvBufSize) if ll_rtn <= 0 thenMessageBox("系統(tǒng)錯(cuò)誤", "HNHISBridge 初始化調(diào)用實(shí)例操作異常!", StopSign!, OK!) end if/創(chuàng)建調(diào)用實(shí)例ll_handle = HnHisDll.CreateInstace()if ll_rtn =1 then
36、/將單項(xiàng)數(shù)據(jù)傳入調(diào)用實(shí)例ll_rtn = HnHisDll.SetParam(ll_handle, "FN", "1") /設(shè)置功能號(hào)本示例是登錄ll_rtn = HnHisDll.SetParam(ll_handle, "YYBH", ls_yybh) /醫(yī)院編號(hào)ll_rtn = HnHisDll.SetParam(ll_handle, "USERID", ls_user) /醫(yī)院編號(hào)ll_rtn = HnHisDll.SetParam(ll_handle, "PWD", ls_encpwd)
37、 /醫(yī)院編號(hào)FUNCTION Long EndDataSet(Long pDataHandle,String name) LIBRARY "HNBridge.dll" FUNCTION Long Run(Long pDataHandle) LIBRARY "HNBridge.dll"FUNCTION Long GetParam(Long pDataHandle, String paramName,REF String paramValue, UINT nMaxValueLenth) LIBRARY "HNBridge.dll"FUNC
38、TION Long LocateDataSet(Long pDataHandle,String name) LIBRARY "HNBridge.dll" FUNCTION Long GetRowSize(Long pDataHandle) LIBRARY "HNBridge.dll"FUNCTION Long GetColSize(Long pDataHandle) LIBRARY "HNBridge.dll" FUNCTION Long NextRow(Long pDataHandle) LIBRARY "HNBridge
39、.dll" FUNCTION Long GetCurrentRow(Long pDataHandle) LIBRARY "HNBridge.dll"FUNCTION Long GetFieldValue(Long pDataHandle, String name, REF String value, UINT nMaxValueLenth) LIBRARY "HNBridge.dll"FUNCTION Long DestroyInstance(Long pDataHandle) LIBRARY "HNBridge.dll"F
40、UNCTION Long GetSysMessage(Long pDataHandle, REF String Message, Uint nMaxMessage) LIBRARY "HNBridge.dll"FUNCTION Long EncryptWithCipher(long pDataHandle,string PlainData,REF string EncryptedData, ULongnMaxValueLenth) LIBRARY "HNBridge.dll"襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案示例二:門診費(fèi)用結(jié)算廣州華南資訊科技
41、2021-3-14TEL:FAX:- 15 -/初始化過程變量long ll_rtn = - 1string ls_svrIP ="192.168.0.1" /前置機(jī)地址。intlu_port = 9990/Socket 服務(wù)器的端口intli_sndBufSize =16384/Socket緩存大小,16k intli_recvBufSize = 16384/ Socket緩存大小,16k long ll_handle = 0/系統(tǒng)調(diào)用實(shí)例的句柄String ls_Error = Space(1024) /保存調(diào)用執(zhí)行情況的詳細(xì)信息的變量,需要預(yù)先分配空間Long ll_
42、rowsize, ll_colsize;/返回?cái)?shù)據(jù)的總行數(shù)以及列數(shù)Long ll_Row, ll_Col; /按行號(hào)取一行數(shù)據(jù)的循環(huán)子變量String ls_ColData /待取的指定數(shù)據(jù)集、指定數(shù)據(jù)行中的列值String ls_DataSetName = "MZCFXMDR" /數(shù)據(jù)集名稱/運(yùn)行該調(diào)用實(shí)例,向服務(wù)器請(qǐng)求并接收響應(yīng)ll_rtn = HnHisDll.Run(ll_handle) If ll_rtn <> 1 then/取詳細(xì)信息HnHisDll.GetSysMessage(ll_handle, ls_Error, 1024)MessageBox
43、("錯(cuò)誤", "操作失??!" + "rn" +"詳細(xì)信息:" + ls_Error) End If/獲取返回的單項(xiàng)數(shù)據(jù)String ls_fhz =space(1024),ls_msg =space(1024)ll_rtn= HnHisDll.GetParam(ll_handle, "FHZ",ls_fhz,1024) /返回值ll_rtn= HnHisDll.GetParam(ll_handle, "MSG",ls_msg,1024) /返回信息 end if/調(diào)用實(shí)例ll
44、_rtn = HnHisDll.DestroyInstance(ll_handle) If ll_rtn <> 1 thenMessageBox("系統(tǒng)錯(cuò)誤", "HNHISBridge調(diào)用實(shí)例操作異常!", StopSign!, OK!) End If/DLL 占有所有l(wèi)l_rtn = HnHisDll.Release() If ll_rtn <> 1 thenMessageBox("系統(tǒng)錯(cuò)誤", "HNHISBridge系統(tǒng)操作異常!", StopSign!, OK!) End If襄樊
45、市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案廣州華南資訊科技2021-3-14TEL:FAX:- 16 -/初始化 DLL 的環(huán)境ll_rtn=HnHisDll.Initialize(ls_svrIP,lu_port,li_sndBufSize,li_recvBufSize) if ll_rtn <= 0 thenMessageBox("系統(tǒng)錯(cuò)誤", "HNBridge 初始化調(diào)用實(shí)例操作異常!", StopSign!, OK!) end if/變量Stringls_yybh='1000'/創(chuàng)建調(diào)用實(shí)例ll_rtn=HnHisDll.I
46、nitialize(ls_svrIP,lu_port,li_sndBufSize,li_recvBufSize) if ll_rtn <= 0 thenMessageBox("系統(tǒng)錯(cuò)誤", "HNHISBridge 初始化調(diào)用實(shí)例操作異常!", StopSign!, OK!) end if/創(chuàng)建調(diào)用實(shí)例ll_handle = HnHisDll.CreateInstace() if ll_rtn =1 then/將單項(xiàng)數(shù)據(jù)傳入調(diào)用實(shí)例ll_rtn = HnHisDll.SetParam(ll_handle, "FN", "
47、;2018") /設(shè)置功能號(hào) 本示例是 門診費(fèi)用結(jié)算 2018ll_rtn = HnHisDll.SetParam(ll_handle, "GMSFHM", "2001") /公民號(hào)碼ll_rtn = HnHisDll.SetParam(ll_handle, "JSBZ", "1") /結(jié)算標(biāo)志ll_rtn = HnHisDll.SetParam(ll_handle, "GRSXH", "2001") /個(gè)人參保號(hào)ll_rtn = HnHisDll.SetParam
48、(ll_handle, "JZLB", "2001") /卡類別/.ll_rtn = HnHisDll.SetParam(ll_handle, "GRZFLJ", "2001") /個(gè)人自付累計(jì)ll_rtn = HnHisDll.SetParam(ll_handle, "ND", "2001") /年度ll_rtn = HnHisDll.SetParam(ll_handle, "RYLB", "2001") /類別ll_rtn = Hn
49、HisDll.SetParam(ll_handle, "JBR", "1209") /經(jīng)辦人ll_rtn = HnHisDll.SetParam(ll_handle, "JBRQ", "20051011") /經(jīng)辦人ll_rtn = HnHisDll.SetParam(ll_handle, "YYBH", "H10001") /醫(yī)院編號(hào)ll_rtn = HnHisDll.SetParam(ll_handle, " CLIENTTYPE ", "
50、HIS ") /客戶端類型/將數(shù)據(jù)集傳入調(diào)用實(shí)例ll_rtn =HnHisDll.insertDataSet(ll_handle)ll_rtn = HnHisDll.InsertRow(ll_handle)/創(chuàng)建一行l(wèi)l_rtn = HnHisDll.SetField(ll_handle, "YYBH",ls_yybh)/醫(yī)院編號(hào)ll_rtn = HnHisDll.SetField(ll_handle, "GRSXH", "10018901")/ 個(gè)人參保號(hào)從醫(yī)??ㄉ蟣l_rtn = HnHisDll.SetField(ll
51、_handle, "JZRQ", "20050222121203")/就診時(shí)間 YYYYMMDD hhmmssll_rtn = HnHisDll.SetField(ll_handle, "XMXH","232323")/項(xiàng)目序號(hào)/.傳入其它字段值襄樊市金保信息系統(tǒng)與HIS 系統(tǒng)信息交換方案廣州華南資訊科技2021-3-14TEL:FAX:- 17 -ll_rtn = HnHisDll.SetField(ll_handle, "BZ3"," ")/備注ll_rtn = HnHi
52、sDll.SetField(ll_handle, "YPLY"," ")/產(chǎn)地ll_rtn = HnHisDll.EndRow(ll_handle,1)/結(jié)束當(dāng)前行l(wèi)l_rtn = HnHisDll.InsertRow(ll_handle)/創(chuàng)建一行l(wèi)l_rtn = HnHisDll.SetField(ll_handle, "YYBH",ls_yybh)/醫(yī)院編號(hào)ll_rtn = HnHisDll.SetField(ll_handle, "GRSXH", "10018901")/ 個(gè)人參保號(hào)從醫(yī)
53、保卡上ll_rtn = HnHisDll.SetField(ll_handle, "JZRQ", "20050222121203")/就診時(shí)間 YYYYMMDD hhmmssll_rtn = HnHisDll.SetField(ll_handle, "XMXH","21324")/項(xiàng)目序號(hào)/.傳入其它字段值ll_rtn = HnHisDll.SetField(ll_handle, "BZ3"," ")/備注ll_rtn = HnHisDll.SetField(ll_handl
54、e, "YPLY"," ")/產(chǎn)地ll_rtn = HnHisDll.EndRow(ll_handle,2)/結(jié)束當(dāng)前行l(wèi)l_rtn = HnHisDll.EndDataSet(ll_handle, ls_DataSetName)/結(jié)束當(dāng)前數(shù)據(jù)集,賦予數(shù)據(jù)集的名稱為"MZCFXMDR",名稱規(guī)定見接口功能號(hào)以及功能描述部分/運(yùn)行該調(diào)用實(shí)例,向服務(wù)器請(qǐng)求并接收響應(yīng)ll_rtn = HnHisDll.Run(ll_handle) If ll_rtn <> 1 then/取詳細(xì)信息HnHisDll.GetSysMessage(l
55、l_handle, ls_Error, 1024)MessageBox("錯(cuò)誤", "操作失敗!" + "rn" +"詳細(xì)信息:" + ls_Error) End If/獲取返回的單項(xiàng)數(shù)據(jù)Stringls_fhz=space(1024),ls_msg=space(1024),ls_jzjlh=space(1024),ls_jsywh=space(1024),ls_ylfyze=space(1024),ls_grzfje=space(1024),ls_grzhje=space(1024), ls_tczeje =sp
56、ace(1024), ls_gwytczf =space(1024), ls_zfeije =space(1024)ll_rtn= HnHisDll.GetParam(ll_handle, "FHZ",ls_fhz,1024) /返回值ll_rtn= HnHisDll.GetParam(ll_handle, "MSG",ls_msg,1024) /返回信息ll_rtn= HnHisDll.GetParam(ll_handle, "JZJLH",ls_jzjlh,1024) /就診登記號(hào)ll_rtn= HnHisDll.GetParam(ll_handle, "JSYWH&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)短圓柱滾子項(xiàng)目投資可行性研究報(bào)告
- 2025年中國(guó)白領(lǐng)套裝項(xiàng)目投資可行性研究報(bào)告
- 2025年中國(guó)電磁流量?jī)x襯里項(xiàng)目投資可行性研究報(bào)告
- 2025年中國(guó)電器引線槽板市場(chǎng)現(xiàn)狀分析及前景預(yù)測(cè)報(bào)告
- 2025年中國(guó)瑞先項(xiàng)目投資可行性研究報(bào)告
- 2025年中國(guó)玩具貓掛件數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025年中國(guó)照明手電筒項(xiàng)目投資可行性研究報(bào)告
- 評(píng)審專家考試試題及答案
- 曲靖輔警考試試題及答案
- 貴州監(jiān)理考試試題及答案
- 2024年高中生物學(xué)業(yè)水平合格考及答案
- 《DAO:元宇宙經(jīng)濟(jì)組織》記錄
- 2025年貴州省貴陽(yáng)市中考?xì)v史試題及答案指導(dǎo)
- 安徽省合肥市科大附中2025年第二次中考模擬初三數(shù)學(xué)試題試卷含解析
- 2024年重慶市大渡口區(qū)中考第二次適應(yīng)性考試物理試題(原卷版)
- 2024年7月中央電大本科《法律文書》期末考試試題及答案
- 五年級(jí)上冊(cè)小數(shù)除法豎式計(jì)算100道及答案
- GB/T 15597.2-2024塑料聚甲基丙烯酸甲酯(PMMA)模塑和擠出材料第2部分:試樣制備和性能測(cè)定
- 信息素養(yǎng)測(cè)試一附有答案
- 醫(yī)學(xué)美容技術(shù)專業(yè)《美容美體技術(shù)》課程標(biāo)準(zhǔn)
- 四川省樂山市2023-2024學(xué)年八年級(jí)下學(xué)期期末數(shù)學(xué)試題(解析版)
評(píng)論
0/150
提交評(píng)論