Biztalk:BTAHL72XSendPipeline 添加换行?

Biztalk: BTAHL72XSendPipeline adds line feed?

我在我的 Biztalk 中使用 Microsoft HL7 加速器库中的 BTAHL72XSendPipeline 将端口发送到程序集并发出 HL7 消息。

它运行良好,但实际的 HL7 消息在每行之后包含换行符和回车符 Return。换句话说,我在每个段终止后看到 \r\n,我没有代码来添加这些,所以我假设它是由 BTAHL72XSendPipeline 本身完成的。

我们的客户不想要换行符,有没有办法控制这一点,使每行只有回车 return 而不是两者?我不知道如何在管道配置上执行此操作。

在网络上进行研究比回答更让我困惑,例如:

根据HL7 Health Standard,段终止符应该只包含一个回车符Return(ASCII 13 或HEX OD)。按照那个标准,这条规则是没有商量余地的。

我还看到了 Howard Edidin 写的一本 PDF 书"HL7 for Biztalk",其中指出

那么,如果我的服务器是基于 window 的,而我将其发送到的服务器是基于 Unix 的,那么我们如何解决这个换行符?

默认情况下,BizTalk 发送管道使用 'CR' (\r) 作为段分隔符。可以使用以下上下文 属性.

更改段定界符的 BizTalk 发送管道行为
SegmentDelimiter2Char   True    Not Promoted    http://HL7Schemas.HeaderPropertySchema

有两种情况

  1. 您正在从某个来源接收 HL7,然后将其发送到其他地方。如果您反汇编此消息,则根据原始 HL7 中的段定界符填充上下文 属性,并相应地由发送管道生成消息。
  2. 如果您使用模式创建 HL7,然后发送到管道,请确保未添加此上下文 属性,如果添加,其值应设置为 false。