Biztalk:BTAHL72XSendPipeline添加换行符吗?

问题描述 投票:1回答:1

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

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

enter image description here

我们的客户不希望换行,有没有一种方法可以控制这一点,以便每行只包含回车符而不是两者都回车?我看不到如何在管道配置上执行此操作。

例如,在网络上进行搜索给我带来的困惑比答案要多:

根据HL7 Health Standard,段终止符应仅包含回车符(ASCII 13或十六进制OD)。根据该标准,此规则不可协商。

我还遇到了由霍华德·埃迪丁(Howard Edidin)撰写的PDF书籍“ HL7 for Biztalk”,指出

enter image description here

那么,如果我的服务器是基于窗口的服务器,而我将其发送到的服务器是基于Unix的服务器,我们如何解决此换行呢?

.net biztalk hl7
1个回答
2
投票

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

SegmentDelimiter2Char   True    Not Promoted    http://HL7Schemas.HeaderPropertySchema

有两种情况

  1. 您正在从某个来源接收HL7,然后将其发送到其他地方。如果您反汇编此消息,则将基于原始HL7中的段定界符填充context属性,并通过发送管道相应地生成消息。
  2. 如果使用架构创建HL7,然后发送到管道,请确保未添加此上下文属性,如果添加了该属性,则其值应设置为false。
© www.soinside.com 2019 - 2024. All rights reserved.