吵吵   2014-07-23  阅读:3,467

前面的一系列教程,都是讲的LIS接口与仪器设备的数据交换,既然是LIS接口,那么还有一部分就是LIS接口与LIS系统交互了。

之所以没有讲这个,一来是不同的LIS系统,数据结构不同,而且不同系统可能都差别比较大;二来是与LIS的交互,多数就是与数据库的交互,C/S的数据库程序是XX管理程序做烂的东西,别告诉我你不会SQL,那只有好好学习,天天向上了。

但是为了让大家能够一窥全貌,对LIS接口有一个系统的了解,吵吵觉得还是有必要讲一下。我们认知事物,大都是从表现看起的,有了例子,兴许就理解了本质。

以下以惠侨LIS系统为例:

惠侨系统和大多数医疗信息系统一样,额,应该是说和大多数旧的医疗信息系统一样,是用是PB编写的,数据库为SQL SERVER2008。为了能够和数据库交互,你起码得知道c#如何去连接数据库,神马?这你都不会,赶快去学习吧。

惠侨LIS

一、项目请求。

当我们收到仪器传输过来的条码,我们要告诉它这个条码要做什么项目的时候,我们要查找的表有:

lis_test_items:该表即代表申请项目表,储存的信息包括申请项目的代码(order_item_code),条码(bar_code),急诊标志(priority_indicator)等信息。

我们通过条码可以查询到申请项目代码order_item_code,但是这个只是申请项目,比如“肝功七项”,这也许是个组合,因此我们就要通过这个代码来查询单项:

lis_order_item_vs_item:该表即是申请项目(order_item_code)和单个项目(report_item_code)的对应表,例如我们查询“肝功七项”就可以得到AST,ALT,TBIL,DBIL,TP,ALB,G等。

那么取到了AST就可以发送给仪器了么,不行呢,不同仪器都会对自己的项目做一个定义,我们把它叫做仪器通道编码,例如AST,在奥林巴斯的仪器通道编码就是01,你如果要做的是AST,发送给仪器的项目就是01.

因此我们的LIS就定义了这么一张表,这张表定义了不同仪器的通道编码和检验项目对应关系。当然,现在这张表会被扩充了,有的具备了小数位数等字段,用于在仪器接口传输结果的时候,将小数位数给约取了。

mitm_no:这张表就是接口对应关系最重要的表了,包括仪器标识(mit_mid),通道编码(mit_cno),和单个项目(mit_itm)

如果将以上的信息组成个查询语句,用于查询某台仪器所做项目的通道编码的话,就是这个样子的:

 
string sql = "select * from lis_test_items A,lis_order_item_vs_item B,mitm_no C where 

A.order_item_code=B.order_item_code AND A.test_date>(getdate()-2)";
            sql = sql + " and A.bar_code='"+bar+"'";
            sql = sql + " and C.mit_mid='" + machine + "'";
            sql = sql + "and C.mit_itm=B.report_item_code";

二、结果接收。

当我们收到仪器发送过来的结果,通常是按照条码传输过来的结果的时候,我们首先要找一个表:

patients:这张表是惠侨系统中标本的主表,你不得不吐槽这张表到底有多大,70多个字段啊,很多字段都是木有用的,当然我们今天不吐槽这个了,它包括的字段有:

pat_sid:样本号
pat_mid:仪器标识
pat_bar_code:条码
pat_id:主键ID,在惠侨系统中,主键是由仪器标识+日期(yyyyMMDD)+样本号组成的。

我们为什么药查这张表呢,因为要通过条码查出来样本号、仪器标识、以及主键ID,因为在该系统中结果表是这个样子的:

res_id:主键ID,即patients表中的pat_id,保证每个标本都是唯一的。
res_sid:样本号,即patients表中的pat_sid.
res_mid:仪器标识,即patients表中的pat_mid.
res_test_mid:测试仪器标识,如果你的报告并不在LIS系统中的对应仪器上发,那么这个可以告诉你结果是哪台仪器做的。
res_bar_code:条码
res_it_ecd:单个项目名称
res_chr:结果值
res_abnormal_indicator:异常标识,超出参考范围的提示
res_unit:单位
res_referencerange:参考范围
res_date:日期时间。

当然,即便是你已经得到了如上所说的结果,你也不能直接就写入结果表了,记得用mitm_no把仪器传输过来的通道编码转化为LIS中的单个项目哦。

好了,这大概就是整个接口的运作流程了,几个表确实搞的蛮烦锁的。

相信聪明的你通过该流程实例,就可以领悟你所用LIS系统的流程了,最终把LIS接口写出来吧!

吵吵微信朋友圈,请付款实名加入:

吵吵 吵吵

3条回应:“一步一步教你做LIS接口教程(五)”

  1. 大城小我说道:

    太专业了,看不懂。标个记号吧

  2. 专业性太强了 表示完全看不懂!http://shanghai.yiqirong.com/

  3. 从来很懒说道:

    我想给你交学费,单独教我怎么样~
    就怕遇到那种要注册的LIS,就算用他们自家的接口,不注册都要带未注册字样。

发表评论

电子邮件地址不会被公开。 必填项已用*标注