使用 Mirth Connect 将 HL7 转换为 SQLite

HL7 to SQLite with Mirth Connect

我正在尝试建立一个通道来读取 HL7 ADT 文本文件、提取 MRN 并将输出写入 SQLite table(数据库编写器)。

我的 SQLite table 包含我的数据,但我所有的 PatientID 都显示为一个非常宽的列中的串联字符串。与每个 row/record.

的 PatientID 相反

我注意到我的 HL7 文件(来自 Meditech EMR)中有一些奇怪的非法(?)字符。 QuickViewHL7 它们出现在 MSH-22 和 MSH-30 中。

在VIM编辑器中-

我的问题是,这些应该是分隔符吗?如果有,它们是什么?马车 Returns?

我已经在 Mirth Connect forums 上发布了这个问题,但除了风滚草之外几乎看不到任何东西。我希望这里的人可能以前看过这个并告诉我发生了什么事。

更新:十六进制转储表明它是 0x7f (0111 1111)。这看起来像一个退格字符。我应该简单地剥离它还是用其他东西代替它?

这个非法字符应该是一个换行符 return 来分隔下一个 HL7 段的开始。

使用VIM,突出显示非法字符并按'ga'。这将告诉您字符的十六进制值。在我的例子中是 0xfa(这似乎是一个后退 space!?)。

再次在 Vim 中,对 \r

进行全局替换

:%s/\%x7f/\r/g

然后保存文件。

现在一切都很好地解析出来了。