Delphi使用HL7从spirolabIII设备读取数据

时间:2014-03-14 13:40:26

标签: delphi hl7

我已经为过敏控制诊所开发了诊所管理应用程序,该应用程序将患者的医疗档案和测试结果存储在数据库中,并生成报告以供分析。

有一个用于在数据库中存储肺活量测定结果的部分。目前我得到了结果  来自WinspiroPro(spirolab设备附带的应用程序)导出的Excel文件,并将它们存储在数据库中。

前几天我遇到了“HL7”这个词,它似乎是与这些医疗设备通信的标准协议,所以我可以直接从使用Delphi的设备中获得结果。

在spirolab设备用户手册中也提到该设备与该系统兼容。

现在我的问题是,如何在delphi中实现这个系统(HL7)?

由于

2 个答案:

答案 0 :(得分:1)

与通常的这种跨专业标准一样,在这种情况下,至少在http://www.hl7.org时需要付费才能获得它们。

如果我在网上搜索,您可以使用现有工具,或查看它们如何在内部工作:

答案 1 :(得分:1)

HL7未绑定到特定传输层。它是应用程序级别的协议,是ISO 7层模型的第七层,因此是级别7.它描述了应该发送此消息时的消息和事件。

它只是提供了一些如何在下层进行消息传输的建议,例如: MLLP与tcp套接字通信。但原则上你可以自由使用你想要的任何传输层,可能是直接套接字通信,文件传输或者什么。

虽然现在大多数系统都可以使用tcp,但也可以将HL7与不同的底层传输协议一起用作RS232。如果我没记错的话,在文档的实施指南中还有一个关于RS232消息传输/耦合的例子。是的,注册后文档和协议标准文档是免费的。

您是否向您的提供商询问具有HL7能力的WinspiroPRO版本?也许它支持已经与tcp的套接字通信 否则,你需要访问ldTCPCClient的源代码并用RS232部分替换tcp部分,否则你必须使用一个软件来解析/构建(解组/编组)HL7消息以及处理传输级别的软件。
顺便说一句,从名称来看,我认为ldTCPclient不适合您的需要,因为您可能需要主机而不是客户端组件。