当记录包含空值时,使用 BizTalk 反汇编平面文件

Disassemble a flatfile with BizTalk, when record contains nulls

外部合作伙伴将向我们发送包含采购订单的逗号分隔文件,我们需要在 BizTalk 环境中对其进行处理。我将使用 BizTalk 的平面文件反汇编程序将 csv 数据转换为可用的 xml.

但是,我们合作伙伴文件中的许多记录对某些 'columns' 具有空值(例如,并非所有地址字段都有值)。 BizTalk 使用平面文件 xsd(使用 Visual Studio 中的向导创建)进行反汇编后,生成的 xml 包含如下元素:

<ShipToAddress2>&#x0;</ShipToAddress2>

我们的后续映射失败并显示

System.Xml.XmlException: '.', hexadecimal value 0x00, is an invalid character.

有什么方法可以消除这个错误?平面文件 xsd 中是否有 属性 或反汇编程序中的设置,我可以在其中设置处理数据中空值的行为?

如果相关字段还没有填充字符集,您可以在反汇编过程中使用它来去除零字符。

对于每个需要它的字段,首先将 Pad Character Type 设置为 Hexadecimal,然后将 Pad Character 设置为 0x00