我将在 BizTalk 中选择一个 csv 文件,经过一些处理后,我想用两个或更多不同的系统对其进行更新。
为了获取 csv 文件,我使用默认值Flatfile Disassembler
来破坏它并在生成模式的帮助下将其构造为 XML。我可以使用一些一致的数据成功地做到这一点,但是如果我使用带有逗号的数据(分隔符除外),BizTalk 会失败!
在不使用自定义管道组件的情况下,还有其他方法可以做到这一点吗?期望在平面文件反汇编器组件中进行简单配置!
我将在 BizTalk 中选择一个 csv 文件,经过一些处理后,我想用两个或更多不同的系统对其进行更新。
为了获取 csv 文件,我使用默认值Flatfile Disassembler
来破坏它并在生成模式的帮助下将其构造为 XML。我可以使用一些一致的数据成功地做到这一点,但是如果我使用带有逗号的数据(分隔符除外),BizTalk 会失败!
在不使用自定义管道组件的情况下,还有其他方法可以做到这一点吗?期望在平面文件反汇编器组件中进行简单配置!
所以,这就是交易。 BizTalk 没有失败。 嗯,它是,但这是预期和正确的行为。
您在无效 CSV 文件中的内容。除非使用换行符,否则 CSV 规范不允许在字段数据中使用逗号。无论哪种方式,两者都是保留字符。
要接受字段数据中的逗号,您必须选择一个换行字符并将其设置在平面文件架构的 Wrap Character 属性中。
这是有效的:
2001 年 1 月 1 日,“史密斯,约翰”,5000 美元
这不是:
2001 年 1 月 1 日,史密斯,约翰,5000 美元
由于您的架构定义有 ',' 作为分隔符,平面文件反汇编程序会将带有逗号的数据视为两个字段,并且由于列不匹配而失败。你有几个选择: