技术文档3PASS4 CS版系统嵌入手册.docx
- 文档编号:13186284
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:55
- 大小:419.40KB
技术文档3PASS4 CS版系统嵌入手册.docx
《技术文档3PASS4 CS版系统嵌入手册.docx》由会员分享,可在线阅读,更多相关《技术文档3PASS4 CS版系统嵌入手册.docx(55页珍藏版)》请在冰点文库上搜索。
技术文档3PASS4CS版系统嵌入手册
一、PASSv4.0功能简介
(一)、以接口方式提供医嘱(处方)审查功能和药物信息查询功能。
1、医嘱(处方)审查功能,审查项目包括:
•药物与药物(联合用药)
相互作用体外配伍配伍浓度
重复用药(重复成份、重复治疗)
•药物与患者
超适应症
禁忌症不良反应药物过敏史
•特殊人群
老年人用药儿童用药妊娠期用药哺乳期用药
性别用药
成人用药
•用法用量
剂量(每次、每天、频次、持续时间、疗程总量)
肝损害剂量
肾损害剂量
给药途径(药品与给药途径、剂型与给药途径)
•围术期用药
•细菌耐药率
•越权用药
2、药物信息查询功能,查询项目包括:
药品说明书药品重要信息浮动窗口查询
(二)、以程序方式提供医院数据维护和审查结果统计分析功能
1、医院数据维护
•基础数据配对
药品配对抗菌药物whonet配对疾病配对过敏源配对给药途径配对药品属性定义给药频次配对
•药品说明书维护
•审查自定义
药品警示
医生权限
围手术期警示
•审查结果屏蔽
2、审查结果统计分析
二、PASSv4.0软件架构
webservice连接
◆PASS4.0系统服务器主要用于安装“PASS系统数据库”和“PASS系统服务程序”。
PASS
系统服务程序通过ADO访问PASS系统数据库。
◆PASS系统客户端程序以socket或webservice访问PASS服务程序,所以住院(门诊)医生工作站只需安装PASS系统客户端程序,不需安装数据库客户连接程序。
◆HIS系统程序通过嵌入PASS系统提供的PASS4Invoke.dll文件DLL函数来嵌入PASS
系统提供的功能。
◆支持webservice,可以支持广域网的访问,适合于区域医疗平台的使用。
三、PASSv4.0在医院的应用
1、嵌入PASS功能的住院(门诊)医生工作站
为了实现PASS系统对HIS病人用药自动、实时审查和查询功能,要求HIS医生工作站嵌入PASS系统提供的DLL函数来加入PASS系统提供的功能,嵌入具体要求如下:
◆在医嘱界面点击药品时,可方便查询药品说明书。
◆加入“药品重要信息提示窗口”自动弹出功能。
(可选)
◆保存处方时,加入PASS自动审查功能,并要求HIS系统根据PASS系统结果进行警示变色。
另外,PASS系统自动将审查出的不合理用药结果保存到PASS系统服务器,以便医院管理层、专业人员对PASS审查结果进行查询、统计分析。
◆点击黑、红、橙、黄警示灯时,系统自动弹出“药品审查结果简要信息提示窗口”。
(可选)。
2、PASS维护工具
为了让PASS能正确、全面识别从HIS系统传入的病人用药情况信息,PASS系统需要预先建立HIS系统药品数据、给药途径数据、给药频次数据、诊断数据、过敏史数据、手术数据等字典的对应关系表,建立对应关系表的过程称为数据维护。
PASS系统维护项目主要包括“药品配对”、“给药途径配对”、“诊断配对”、“手术配对”等这些配对工作,主要作用是建立用户数据与PASS系统数据之间的对应关系。
为了让医院能尽快实施和使用PASS,美康公司要求医院在工程实施前以电子文档方式提供医院HIS系统中的药品、给药途径数据字典表,然后由美康公司专业人员负责完成药品、给药途径的配对工作,并将配对结果直接打包到PASS系统安装光盘数据库中。
对于安装完PASS系统后医院新进药品,美康公司提供独立的维护工具,以便医院专业人员及时完成新进药品配对,保证PASS系统能对医院药品信息进行准确、全面的审查。
3、审查结果统计分析工作站
前面提到,PASS系统在医生工作站对病人用药自动审查时,会自动将审查出的不合理用药结果保存到PASS系统服务器。
美康公司提供的“审查结果统计分析”就是供医院管理层、专业人员对全院审查结果进行全面、准确统计分析的独立程序,医院管理层、专业人员通过此程序可以了解、掌握全院医生用药情况,有针对性地制定出有效的用药管理措施。
四、PASSv4.0嵌套前准备
1.提取基础数据
参见文档“技术文档1-PASS4系统工程实施前医院准备工作.doc”
2.安装PASS服务器
参见文档“”
3.安装PASS客户端
参见文档“”
五、PASSv4.0嵌套流程
PASS接口的嵌套工作实际上是围绕实现PASS审查与查询这两大功能进行的。
下面首先简要介绍接口函数的调用流程。
接口函数调用示意图:
HIS程序首先调用初始化函数后,如需使用PASS查询功能,首先调用MDC_DoSetDrug函数将待查询药品的信息传送至PASS服务器,然后再调用MDC_DoSetDrug函数显示药品说明书或者药品重要信息提示窗口。
如需使用PASS审查功能首先传入病人的基本信息,接着传入病人的诊断信息,过敏史信息,手术信息,用药清单,再调用PASS的审查函数MDC_DoCheck进行审查,如系统发现有潜在的用药风险会弹出警示框进行提示。
最后HIS程序退出时,调用MDC_Quit函数,释放PASS资源。
整个PASS嵌套工作大体上可分为四大步:
第一步:
是否调用PASS功能参数设置;第二步:
PASS初始化;第三步:
PASS查询功能;第四步:
PASS审查功能。
下面依次进行介绍。
第一步:
是否调用PASS功能参数设置
1.全局控制参数
为了方便医院对PASS进行管理,需要在HIS数据库中设立一个或者多个全局控制参数,由它来总体或者分别控制不同类型工作站(门诊医生工作站,住院医生工作站……)PASS功能的开启与关闭。
考虑到有些医院正在使用PASSv3.0版本,因此该参数的设置应保证同时只能使用PASS系统的一个版本,不能同时使用两个版本,即PASSv4.0与PASSv3.0互斥。
例如:
在HIS系统表“APP_CONFIGER_PARAMETER”中加入一是否调用PASS系统参数设置记录,具体如下:
参数名字段
参数值字段
PARAMETER_NAME
PARAMETER_VALUE
PASS
2:
表示调用PASS3.0功能
1:
表示调用PASS4.0功能;
0:
表示不调用PASS功能;
第二步:
PASS初始化
PASSv4.0初始化需要一下这些工作根据读取的全局控制参数确定能否调用PASS功能、初始化与PASS服务器的连接、设置客户端审查的模式、以当前用户登录通信平台客户端(用户购买相关模块)。
1.注意事项:
◆获取HIS数据库参数配置表中PASS4.0功能是否开启的控制参数,并根据此参数决定是否调用PASS4.0初始化函数。
◆由于PASS4.0门诊、住院、药房、静脉配置中心、摆药工作站等平台的审方功能均可能存在着不同的审查模式(审查模块与警示级别),初始化函数的调用放在启动进入不同类型医生站程序时以及用户切换时来进行。
◆在调用PASS4.0初始化函数时,需要先判断“PASS4Invoke.dll”嵌套接口文件是否存在,如存在则进行调用,否则不调用。
2.调用函数的参数解析:
1)初始化函数
FunctionintegerMDC_Init(StringpcCheckMode,&
StringpcHisCode,&
StringpcDoctorCode)Library"PASS4Invoke.dll"
/*传入参数:
pcCheckMode:
字符串,审查模式,传入使用系统设置定义的模式,根据传入值的不同审查结果不同。
传入空串按默认PASS审查模式审查
pcHisCode:
字符串,从HIS数据库中获取中文医院名称信息,而非医院编码,如:
XXXXX医院。
工作站类型
传入参数(字符串)
备注
门诊医生工作站
mz
住院医生工作站
zy
门诊药房工作站
mzyf
住院药房工作站
zyyf
……
……
根据passset设置的参数
pcDoctorCode:
字符串,医生编码,传入登录医生编码,必须是医生字典表里有的。
以便确定医生身份,用来登录互动平台。
返回值:
整型
1-成功
0-调用PASS初始化接口失败
-1-执行命令超时
-2-连接PASS服务器失败
-3-获取审查、查询列表出错
-4-初始化工具条出错
-5-更新资源文件出错
调用:
系统必须首先调用MDC_Init成功后才能调用其他功能函数。
*/
3.算法:
//*******************美康嵌入代码开始(PASS初始化)*******************
//声明变量
boolgl_PassEnabled//全局变量,是否使用pass4功能
Stringloginuserid//当前登录用户工号和姓名
Stringhosname//医院名称
Stringcheckmode//当前登录科室编码和名称
gl_PassEnabled=【HIS系统服务器"是否使用PASS系统"记录值】
//1、从HIS系统服务器读是否使用PASS系统设置值到"否使用PASS系统"全局变量//gi_passe4nabled中,
//例如从HIS系统服务器中HisSysSetTable表读是否使用PASS系统代码如下:
//SelectnSysSetValueFieldFromHisSysSetTable
//Into:
gl_PassEnabled
//WhereItem='PASS';
IF(gl_PassEnabled=4)THEN
//如果调用PASS系统功能
IfFileExists("PASS4Invoke.dll")Then
//如果找到passinvoke.dll文件,则调用PASS提供的DLL函数MDC_Init()进行初始化。
loginuserid=[当前登录用户工号]
//取当前当前登录用户工号和用户名,例如lcLoginUserIDandName='001'
checkmode=[工作站类型]
//门诊医生站传’mz’;住院医生站传’zy’;其余传值参见passset.exe
IfMdc_Init(checkmode,hosname,loginuserid)=1Then
//调用MDC_Init()函数进行初始化成功
gl_PassEnabled=4
//将"是否使用PASS系统"全局变量设为使用状态
Else
gl_PassEnabled=0
//将"是否使用PASS系统"全局变量设为不使用状态
EndIf
Else//passinvoke.dll文件未找到
gl_PassEnabled=0
//将"是否使用PASS系统"全局变量设为不使用状态
messagebox('提示','PASS4Invoke.dll文件不存在,合理用药监测系统无法正常使用!
请与系统管理员联系!
')
EndIf
EndIf
//*******************美康嵌入代码结束(PASS初始化)*******************
第三步:
PASS查询功能
1.注意事项
1)病人处方、医嘱药品信息的查询包含PASS系统数据库中用药重要信息的查询,也包括用户自定义的用于医生需要重点关注的该药品信息,如社保、高危、抗菌药物等信息;也包含该药品的说明书查询。
、
2)查询功能的嵌套地点,主要在医嘱(处方浏览)界面和医嘱(处方)的新开界面以及其他需要查询药品信息的地点。
2.调用函数参数解析:
1)传入查询药品函数
FunctionintegerMDC_DoSetDrug(stringpcDrugUniqueCode,&
stringpcDrugName)Library"PASS4Invoke.dll"
/*传入参数:
pcDrugUniqueCode:
字符串类型,表示药品唯一码,要求与PASS系统配对时采用的药品唯一码完全一致,否则PASS系统无法识别药品信息。
此参数不能为空。
pcDrugName:
字符串类型,表示药品名称。
返回值:
整型,1-成功
0-失败*/
2)药品信息查询函数
FunctionintegerMDC_DoRefDrug(integerpiQueryType)Library"PASS4Invoke.dll"
/*传入参数:
piQueryType:
整型,表示查询模块。
具体如下:
11-药品说明书,51-简要信息(浮动窗口)
返回值:
整型,1-成功
0-失败*/
3.算法:
//声明变量
stringpcdruguniquecode//待查询药品唯一码
stringpcdrugname//待查询药品名称
datawindowldw//数据窗口
ifgl_PassEnabled=0then
return//不使用pass功能,返回。
else//使用PASS功能
ldw=【his界面中的数据窗口】
if【当前医嘱类型】=【药品医嘱】then
pcdruguniquecode=ldw.【药品唯一码字段名】.value
pcdrugname=ldw.【药品名称字段名】.value
else//当前医嘱为非药品医嘱
pcdruguniquecode=''//非药品医嘱唯一码与传空值
pcdrugname=''//非药品医嘱名称传空值
endif
MDC_DoSetDrug(pcdruguniquecode,pcdrugname);//传查询药品的唯一码与药品名称传
//如名称将显示在浮动工具栏上
MDC_DoRefDrug(51)//显示药品重要信息提示窗口
endif
第四步:
PASS审查功能
1.注意事项:
病人处方、医嘱的审查是围绕病人诊疗行为的过程来进行,在代码嵌入过程中有以下几点需要引起注意:
1)处方、医嘱审查动作发生在提交病人的处方、医嘱时,以便发现并纠正用药方案问题,减少不合理用药事件的发生。
2)PASS4病人处方、医嘱的审查分解动作包含调用该病人基本信息函数MDC_SetPatient、过敏史信息函数MDC_AddAller、诊断记录信息函数MDC_AddMedCond、手术记录信息函数MDC_AddOperation、处方或医嘱中药品记录信息函数MDC_AddScreenDrug、审方函数MDC_DoCheck;审查完成后,需调用MDC_GetWarningCode函数获取该病人审查结果药品医嘱”警示级别,如存在严重用药禁忌问题则提示“存在用药禁忌问题,是否调整用药方案”,如没有则无需提示。
3)病人基本信息、过敏史、诊断、手术、药品医嘱(新开,停止,作废,删除等)任一记录信息发生改变,在最后确认时,需重新传入病人基本信息,过敏史,诊断,手术,用药列表进行审查。
2.调用函数参数解析:
1)病人基本信息函数:
FunctionIntMDC_SetPatient(StringpcPatCode,&
StringpcInHospNo,&
StringpcVisitCode,&
StringpcName,&
StringpcSex,&
StringpcBirthday,&
StringpcHeightCM,&
StringpcWeighKG,&
StringpcDeptCode,&
StringpcDeptName,&
StringpcDoctorCode,&
StringpcDoctorName,&
IntpiPatStatus,&
IntpiIsLactation,&
IntpiIsPregnancy,&
StringpcPregStartDate,&
IntpiHepDamageDegree,&
IntpiRenDamageDegree)Library"PASS4Invoke.dll"
传入参数:
pcPatCode:
字符串类型,表示病人ID,与参数pcVisitCode唯一确定一个病人,此参数不能为空。
pcInHospNo:
符串类型,表示病人门诊号或住院号,此参数不能为空,此参数主要用于“统计分析”显示门诊号或住院号,便于查询和核对。
pcVisitCode:
字符串类型,表示病人就诊次数或住院次数,与参数pcPatCode唯一确定一个病人,如果HIS系统没有此信息,则可传入"1"。
pcName:
字符串类型,表示病人姓名。
pcSex:
字符串类型,表示病人性别,格式为"男"、"女"、"不详",如果没有赋值将会影响病人“妊娠”、“哺乳”、“性别”模块的审查。
pcBirthday:
字符串类型,表示病人出生日期,格式为"yyyy-mm-dd",如果没有赋值将会影响病人"剂量"、"儿童警告"、"老年人警告"、"成人"、"肝、肾剂量"模块的审查。
例如:
"1976-08-12"。
pcHeightCM:
字符串类型,表示病人以厘米为单位的身高值,例如某病人身高为175厘米,则应传入"175"。
如果HIS系统没有管理病人身高信息,则应传入空字符串。
pcWeighKG:
字符串类型,表示病人以公斤为单位的体重值,例如某病人体重为23.5公斤,则应传入"23.5",由于传入身高时不能传入单位,所以如果HIS系统病人身高不是以公斤为单位,则要求必须换算成公斤后,再传入数值。
如果HIS系统没有管理病人体重信息,则应传入空字符串。
与剂量,肝、肾剂量损害相关。
pcDeptCode:
字符串类型,表示科室编码。
pcDeptName:
字符串类型,表示科室名称。
pcDoctorCode:
字符串类型,表示主治/挂号医生编码。
pcDoctorName:
字符串类型,表示主治/挂号医生名称。
piPatStatus:
整型,表示病人状态:
1表示住院病人(默认),2表示门诊病人,3表示急诊病人。
用于采集病人的类型。
Mdc_init中的审查模式只决定审查项目,不能决定病人类型。
piIsLactation:
整型,表示病人哺乳状态,优先于通过PassSetMedCond()函数传入“哺乳期”方式的审查,取值:
-1-无法获取哺乳状态(默认);0-不是;1-是
piIsPregnancy:
整型,表示病人妊娠状态,优先于通过PassSetMedCond()函数传入“妊娠期”方式的审查,取值:
-1-无法获取妊娠状态(默认);0-不是;1-是
pcPregStartDate:
字符串类型,表示妊娠开始日期,格式为yyyy-mm-dd。
piHepDamageDegree:
整型,表示病人肝损害程度,优先于通过PassSetMedCond()函数传入肝损害类诊断的审查,取值:
-1-不确定(默认);0-无肝损害;1-肝功能不全;2-轻度肝损害;3-中度肝损害;4-重度肝损害
piRenDamageDegree整型,表示病人肾损害程度,优先于通过PassSetMedCond()函数传入肾损害类诊断的审查,取值:
-1-不确定(默认);0-无肾损害;1-肾功能不全;2-轻度肾损害;3-中度肾损害;4-重度肾损害
返回值:
整型,1-成功
0-失败
调用:
在审查时,第一个调用该函数
2)传入病人过敏史函数
FunctionintegerMDC_AddAller(stringpcIndex,&
stringpcAllerCode,&
stringpcAllerName,&
stringpcAllerSymptom)Library"PASS4Invoke.dll"
/*传入参数:
pcIndex:
字符串类型,表示过敏源序号,在同一循环传入时,要求各记录的pcIndex值必须唯一。
pcAllerCode:
字符串类型,表示过敏源唯一码,要求与PASS系统配对时采用的过敏源唯一码完全一致,否则PASS系统无法识别此过敏信息。
此参数不能为空。
pcAllerName:
字符串类型,表示过敏源名称。
pcAllerSymptom:
字符串类型,表示过敏源症状。
返回值:
整型,1-成功
0-失败
调用:
如果当前病人有多条过敏信息记录时,要求循环调用传入。
*/
3)传入病人诊断信息函数
FunctionintegerMDC_AddMedCond(stringpcIndex,&
stringpcDiseaseCode,&
stringpcDiseaseName,&
stringpcRecipNo)Library"PASS4Invoke.dll"
/*传入参数:
pcIndex:
字符串类型,表示诊断序号,在同一循环传入时,要求各记录的pcIndex值必须唯一。
pcDiseaseCode:
字符串类型,表示诊断唯一码,要求与PASS系统配对时采用的诊断唯一码完全一致,否则PASS系统无法识别此诊断信息。
此参数不能为空。
pcDiseaseName:
字符串类型,表示诊断名称。
pcRecipNo:
处方号。
门诊处方处方专用,住院传空。
适应症审查模块与处方号参数相关
返回值:
整型,1-成功
0-失败
调用:
如果当前病人有多条诊断信息记录时时,要求循环调用传入。
*/
4)传入病人手术记录函数
FunctionintegerMDC_AddOperation(stringpcIndex,&
stringpcOprCode,&
stringpcOprName,&
stringpcOprStartDateTime,&
stringpcIncisionType,&
stringpcOprEndDateTime)Library"PASS4Invoke.dll"
/*传入参数:
pcIndex:
字符串类型,表示手术序号,在同一循环传入时,要求各记录的pcIndex值必须唯一。
pcOprCode:
字符串类型,表示手术唯一码,要求与PASS系统配对时采用的手术唯一码完全一致,否则PASS系统无法识别此手术信息。
此参数不能为空。
pcOprName:
字符串类型,表示手术名称。
pcOprStartDateTime:
字符串类型,表示手术开始时间,格式为"yyyy-mm-ddhh:
mm:
ss"。
pcIncisionType:
字符串类型,表示切口类型,取值为:
切口类型
传入参数(字符型)
备注
0类
‘0’
1类
‘1’
2类
‘2’
3类
‘3’
pcOprEndDateTime:
字符串类型,表示手术结束时间,格式为"yyyy-mm-ddhh:
mm:
ss"。
返回值:
整型,1-成功
0-失败
调用:
如果当前病人有多条手术信息记录时时,要求循环调用传入。
*/
5)传入病人用药列表函数
FunctionintegerMDC_A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 技术文档3PASS4 CS版系统嵌入手册 技术 文档 PASS4 CS 系统 嵌入 手册