PASS4嵌入接口区域医疗版剖析.docx
《PASS4嵌入接口区域医疗版剖析.docx》由会员分享,可在线阅读,更多相关《PASS4嵌入接口区域医疗版剖析.docx(35页珍藏版)》请在冰豆网上搜索。
PASS4嵌入接口区域医疗版剖析
sMDC_GetDrugRefEnabled
PASS4系统接口技术手册
(区域医疗版)
美康公司
二零一四年六月
第一节PASS4.0系统主要功能
一、医嘱(处方)审查功能(
表示PASS4.0新增功能)
PASS系统的审查功能包括:
(1)超适应症审查
超适应症模块能够审查病人的疾病情况是否在处方药物的适应症范围内,若病人存在超药品适应症用药的情况,系统则发出警告提醒医生可能需要调整病人的药物治疗方案。
(2)相互作用审查
是指两两药物合用可能产生的不良相互作用。
这些相互作用可能导致毒性增强、药效降低等变化,使药品的实际使用效果发生改变,导致不良反应的发生,是临床用药中需要密切关注的问题。
(3)体外配伍审查
检查注射剂药物配伍使用时,是否存在理化相容或不相容。
本模块审查关注的是注射剂药物配伍时是否有足以引起不良后果的理化改变(如颜色改变、沉淀、混沌、微粒增加、酸碱性变化等)。
(4)配伍浓度审查
配伍浓度模块能够监测配伍后的药品浓度是否在药品说明书推荐的给药浓度范围内,若不在此范围内则系统发出警告提醒医生可能需要调整处方药品或溶媒的用量。
(5)剂量范围审查
检查用户输入的药法用量是否处于参考资料所提示的正确的范围内。
能对最大、最小剂量(次剂量、日剂量)、极量(次极量、日极量)、用药频率、用药持续时间、疗程总剂量进行审查,但只是提供一个药品在不同年龄段和特定给药途径下的正常使用范围,不考虑适应症和用药类型。
(6)药物过敏审查
药物过敏审查功能是在获取病人既往过敏原或过敏类信息的基础上,提示病人用药处方中是否存在与病人既往过敏物质相关的、可能导致类似过敏反应的药品。
(7)药物禁忌症审查
本审查功能将病人的疾病情况与药物禁忌症关联起来,如果处方药物的禁忌症与病人疾病情况相关时,说明病人存在使用某个药物的禁忌症,系统即发出警告提醒医生可能需要调整病人的药物治疗方案。
(8)不良反应审查
本审查功能将病人的疾病情况与药物的不良反应关联起来,如果医生处方的药物可能引起某种不良反应,而病人恰好存在相似的疾病情况时,系统会发出警告,以提醒医生注意药物的不良反应可能使病人原有病情加重,或病人疾病由治疗药物导致。
(9)肝损害剂量审查
肝损害剂量模块审查是由于病人肝功能损害时对药物的吸收、代谢、排泄等均有影响,给药剂量与常规剂量范围有一定差异,需检测该类人群使用药品剂量是否合理,如果使用剂量不在药品说明书推荐的剂量范围内,则系统发出警告提醒医生可能需要调整病人的药物剂量。
(10)肾损害剂量审查
肾损害剂量模块审查是由于病人肾功能损害时肾的排泄和调节功能也将会降低,给药剂量与常规剂量范围有一定差异,需检测该类人群使用药品剂量是否合理,如果使用剂量不在药品说明书推荐的剂量范围内,则系统发出警告提醒医生可能需要调整病人的药物剂量。
(11)重复用药审查(重复成分、重复治疗审查)
重复成分审查提示病人用药处方中的两个或多个药品是否存在相同的药物成分,可能导致重复用药问题;重复治疗审查提示处方中的两个或多个药品(带给药途径)同属某个药物治疗分类(即具有同一种治疗目的),可能存在重复用药的问题。
(12)给药途径审查(剂型-给药途径、药品-给药途径审查)
本项功能提示处方药品中可能存在的剂型与给药途径不匹配的问题,如片剂不可注射、滴眼液不可口服;并收集某些药物不能用于某些给药途径的数据,如胰岛素注射液不能用于口服,氯化钾注射液不能静推等等。
临床上如果有此类用药不规范的情况,即予以提示,并提示用户可能有处方录入错误。
(13)老人用药审查
本模块的审查旨在帮助医生或药师更合理地对老人用药,防止不必要的不良医疗事件发生。
(14)儿童用药审查
本模块提示当病人为儿童,其处方药品中是否存在不适于儿童使用的药品。
(15)妊娠用药审查
提示妊娠期妇女用药时,其处方药品中是否存在不适于妊娠期使用的药品,从而帮助医生或药师在患者妊娠期间合理用药,提高妊娠用药安全性。
(16)哺乳用药审查
哺乳期妇女用药时,药物除对母亲产生影响外,还可通过乳汁进入婴儿体内,从而对婴儿也产生影响。
本审查功能可提示医生或药师处方中是否有哺乳妇女不宜使用的药物,从而减少针对哺乳妇女和乳儿的不良医疗事件发生。
(17)性别用药审查
性别用药模块审查是提示处方中是否使用了不适宜用于此病人性别的药品,如盐酸坦洛新缓释胶囊,用于缓解前列腺增生症引起的排尿障碍,则不适宜用于女性患者。
(18)成人用药审查
成人用药模块审查是提示处方中是否使用了不适宜成年人使用某些药品,如多巴丝肼片不能用于25岁以下的成人。
(19)围术期用药审查
围术期用药模块审查是监测在围手术期内使用抗菌药物的品种是否合理,使用抗菌药物的时机和时限是否合理,在围手术期若使用抗菌药物的品种不在已维护的手术能够使用的抗菌药物的品种范围内、手术使用抗菌药物时机和时长不在医院规定的时间内(可以精确到小时),则系统发出警告提醒医生可能需要调整病人围手术期的用药方案。
(20)细菌耐药率审查
细菌耐药率模块审查能够提醒医生处方药品的本院耐药情况(包括哪些细菌对处方药品耐药和耐药率),医生根据耐药可能需要调整用药方案。
(21)越权用药审查
越权用药模块审查是根据医院规定的医生不能使用的药品清单,监测医生开出的处方药品是否在其可以使用的权限范围内,如监控医生越级使用抗菌药物、越级使用特殊管制药品等。
二、医药信息在线查询功能
PASS系统主要提供医院在用药品以下信息的查询:
(1)药物专论:
药物临床应用专论《MCDEX中国医师药师临床用药指南》电子版,提供药物临床应用的各种详细信息,包括了:
药物的各种名称、临床应用、用法用量、给药说明、禁忌症、慎用、特殊人群、不良反应、药物相互作用、注意事项、国外专科用药情况、药物过量、药理、制剂与规格、贮藏等等信息。
(2)药品说明书:
包括了国家食品药品监督管理局批准发布的厂家药品说明书以及OTC说明书样稿。
在PASS系统中查询药品说明书,系统会将医院在用的说明书优先放在第一篇方便查看。
此外,用户还能够在PASS系统中任意一篇说明书的基础上,修改其内容,以修正说明书版本差别带来的信息偏差。
(3)中华人民共和国药典:
包含了《中华人民共和国药典2010》的内容和中药材彩图信息。
(4)病人用药教育专论:
用通俗易懂的语言叙述了药物的用途、怎样用药、不良反应、注意事项、药物相互作用、用药过量的表现和处理方法、提醒、储藏方法等等,根据每种药物的特点,描述出药物合理使用的控制要点,方便医生、药师开展病人用药咨询和用药教育服务,提高病人的用药依从性。
(5)专项信息查询:
包括药物-食物相互作用查询、药物-药物相互作用查询、注射剂体外配伍、药物禁忌症、药物适应症、配伍浓度、肝损害剂量、肾损害剂量、不良反应、老人用药警告、儿童用药警告、妊娠用药警告、哺乳用药警告、成人用药警告、性别用药警告等。
(7)药品重要信息浮动窗口:
PASS重要信息功能模块的目的是将药物重要的安全性信息通过简明扼要的浮动窗口形式及时地呈现给用户,以供临床用药参考。
PASS重要信息的内容分为两部分,一部分定义为部分重要的用药安全性信息,如药物禁忌、妊娠/哺乳、皮试、特别警示等,还能由用户自定义设置显示医院药品的属性,如社保、基本药物、麻/精/毒/放等特殊警示标识;另一部分则是医院本院信息,可以由用户自行录入和维护。
第二节PASS4.0在医院医生工作站的嵌入
一、PASS4.0医生工作站软件结构示意图
1、PASS4.0系统服务器主要用于安装“PASS系统数据库”和“PASS系统服务程序”。
PASS系统服务程序通过ADO访问PASS系统数据库。
2、PASS系统客户端程序以WebService访问PASS服务程序,所以住院(门诊)医生工作站只需安装PASS系统客户端程序,不需安装数据库客户连接程序。
3、HIS系统程序通过嵌入PASS系统提供的PASS4Invoke.dll文件,调用DLL函数来实现PASS系统提供的功能。
二、PASS4.0嵌入功能要求
1、保存处方或医嘱时,嵌入自动审查功能,并要求HIS系统根据PASS系统结果进行警示变色。
2、点击药品时,嵌入药品信息查询功能。
3、嵌入PASS系统标准右键弹出菜单功能(可选)。
三、PASS4.0接口函数分类
序号
类别
函数
函数名
系统初始化函数
1
PASS初始化
MDC_Init()
审查类函数
2
传入审查对象信息类函数
传入病人基本记录信息
MDC_SetPatient()
3
传入病人药品记录信息
MDC_AddScreenDrug()
4
传入病人过敏史记录信息
MDC_AddAller()
5
传入病人诊断记录信息
MDC_AddMedCond()
6
传入病人手术记录信息
MDC_AddOperation()
7
审查函数
MDC_DoCheck()
8
获取审查结果函数
获取药品医嘱警示级别
MDC_GetWarningCode()
9
获取审查结果条数函数
MDC_GetResultItemCount()
10
获取审查结果详细信息函数
MDC_GetResultDetail()
信息查询类函数
11
信息查询类函数
获取查询项目有效性函数
MDC_GetDrugRefEnabled()
12
查询药品信息函数
MDC_GetDrugQueryInfo()
13
关闭浮动窗口函数
MDC_CloseDrugHint()
其他类函数
14
其他类函数
获取PASS系统最后一次错误信息函数
MDC_GetLastError()
15
本地参数设置窗口函数
MDC_Settings()
16
调用药研究窗口函数
MDC_DoMediStudy()
系统退出函数
17
PASS退出
MDC_Quit()
四、嵌套函数调用流程
1.初始化PASS客户端MDC_Init
2.如果需要多次初始化,每次初始化前调用MDC_Quit
3.调用审查接口:
A.PASS增加一个病人的基本信息MDC_SetPatient
B.PASS增加一条用药清单记录(多条重复调用)MDC_AddScreenDrug
C.PASS增加一条标准化的过敏记录(多条重复调用)MDC_AddAller
D.PASS增加一条标准化的诊断记录(多条重复调用)MDC_AddMedCond
E.PASS增加一条标准化的手术记录(多条重复调用)MDC_AddOperation
F.PASS审查函数MDC_DoCheck
G.获取审查结果严重程度MDC_GetWarningCode
H.获取一条医嘱的审查结果条数MDC_GetResultItemCount
I.获取审查结果明细MDC_GetResultDetail
4.调用查询接口:
A.查询某一个药品右键是否可用MDC_GetDrugRefEnabled
B.查询某一个药品信息MDC_GetDrugQueryInfo
5.关闭浮动窗口MDC_CloseDrugHint
6.调用DLL参数设置窗口MDC_Settings
7.用药研究MDC_DoMediStudy
8.如果初始化或调用其他接口失败,可用下面的接口获取错误信息:
获取最后一次错误信息MDC_GetLastError
五、PASS4Invoke.dll函数声明
C#语言中PASS系统DLL函数声明注意事项:
//*******美康嵌入代码开始(DLL函数声明)*****************************
//1、PASS初始化
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_Init",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_Init(stringpcCheckMode,
stringpcHisCode,
stringpcDoctorCode);
//2、获取PASS系统最后一次错误信息函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetLastError",CharSet=CharSet.Ansi)]
publicstaticexternstringsMDC_GetLastError();
//3、审查函数
//3-1传入审查对象信息类函数
//3-1-1传病人基本记录信息
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_SetPatient",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_SetPatient(stringpcPatCode,
stringpcInHospNo,
stringpcVisitCode,
stringpcName,
stringpcSex,
stringpcBirthday,
stringpcHeightCM,
stringpcWeighKG,
stringpcDeptCode,
stringpcDeptName,
stringpcDoctorCode,
stringpcDoctorName,
intpiPatStatus,
intpiIsLactation,
intpiIsPregnancy,
stringpcPregStartDate,
intpiHepDamageDegree,
intpiRenDamageDegree);
//3-1-2传病人药品记录信息
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_AddScreenDrug",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_AddScreenDrug(stringpcIndex,
intpiOrderNo,
stringpcDrugUniqueCode,
stringpcDrugName,
stringpcDosePerTime,
stringpcDoseUnit,
stringpcFrequency,
stringpcRouteCode,
stringpcRouteName,
stringpcStartTime,
stringpcEndTime,
stringpcExecuteTime,
stringpcGroupTag,
stringpcIsTempDrug,
stringpcOrderType,
stringpcDeptCode,
stringpcDeptName,
stringpcDoctorCode,
stringpcDoctorName,
stringpcRecipNo,
stringpcNum,
stringpcNumUnit);
//3-1-3传入病人过敏史记录信息
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_AddAller",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_AddAller(stringpcIndex,
stringpcAllerCode,
stringpcAllerName,
stringpcAllerSymptom);
//3-1-4传入病人诊断记录信息
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_AddMedCond",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_AddMedCond(stringpcIndex,
stringpcDiseaseCode,
stringpcDiseaseName,
stringpcRecipNo);
//3-1-5传入病人手术记录信息
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_AddOperation",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_AddOperation(stringpcIndex,
stringpcOprCode,
stringpcOprName,
stringpcOprStartDateTime,
stringpcOprEndDateTime);
//3-2审查函数
//3-2-1合理用药审查函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_DoCheck",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_DoCheck(intpiShowModei,
intpiIsSave);
//3-3获取审查结果函数
//3-3-1获取药品医嘱警示级别
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetWarningCode",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_GetWarningCode(stringpcIndex);
//3-3-2获取审查结果条数函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetResultItemCount",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_GetResultItemCount(stringpcIndex);
//3-3-3获取审查结果详细信息函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetResultDetail",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_GetResultDetail(stringpcIndex);
//4、信息查询类函数
//4-1获取查询项目有效性函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetDrugRefEnabled",CharSet=CharSet.Ansi)]
publicstaticexternstringsMDC_GetDrugRefEnabled(stringpcDrugUniqueCode,
intpiQueryType);
//4-2查询药品信息函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_GetDrugQueryInfo",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_GetDrugQueryInfo(stringpcDrugUniqueCode,
stringpcDrugName,
intpiQueryType,
intx,
inty);
//4-3关闭浮动窗口函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_CloseDrugHint",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_CloseDrugHint();
//5、本地参数设置窗口函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_Settings",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_Settings();
//6、调用药研究窗口函数
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_DoMediStudy",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_DoMediStudy(stringpcUseTime);
//7、PASS退出
[DllImport("PASS4Invoke.dll",EntryPoint="MDC_Quit",CharSet=CharSet.Ansi)]
publicstaticexternintiMDC_Quit();
//*******PASS4.0**1-美康嵌入代码结束(DLL函数声明)*****************************
powerbulider语言中PASS系统DLL函数声明注意事项:
//*******美康嵌入代码开始(DLL函数声明)*****************************
//1、PASS初始化
FunctionIntMDC_Init(StringpcCheckMode,&
StringpcHisCode,&
StringpcDoctorCode)Library"PASS4Invoke.dll"
//2、获取PASS系统最后一次错误信息函数
FunctionstringMDC_GetLastError()Library"PASS4Invoke.dll"
//3、审查类函数
//3-1传入审查对象信息类函数
//3-1-1传病人基本记录信息
FunctionIntMDC_SetPatient(StringpcPatCode,&
StringpcInHospNo,&
StringpcVisitCode,&
StringpcName,&
StringpcSex,&
StringpcBirthday,&
StringpcHeightCM,&
StringpcWeighKG,&
StringpcDeptCode,&
StringpcDeptName,&
StringpcDoctorCode,&
StringpcDoctorName,&
IntpiPatStatus,&
IntpiIsLactation,&
IntpiIsPregnancy,&
StringpcPregStartDate,&