从BizTalk中的平面文件中删除头

从BizTalk中的平面文件中删除头,biztalk,Biztalk,在BizTalk中,从平面文件中删除标题行的最简单方法是什么?我通过为标题行创建一个单独的模式(为正文创建一个模式),然后将“配置管道”对话框中的HeaderSpecName属性设置为我刚才创建的标题模式,然后将PreserveHeader属性设置为false来实现这一点。然而,我的问题是,使用这个解决方案,我需要创建一个模式,它只需要存在,这样我就可以删除标题行。我相信您所说的是实现您要求的建议方法。我只是在一个我正在工作的项目上做了这个,并且选择了额外的模式 另一种选择是为在平面文件汇编程序

在BizTalk中,从平面文件中删除标题行的最简单方法是什么?我通过为标题行创建一个单独的模式(为正文创建一个模式),然后将“配置管道”对话框中的HeaderSpecName属性设置为我刚才创建的标题模式,然后将PreserveHeader属性设置为false来实现这一点。然而,我的问题是,使用这个解决方案,我需要创建一个模式,它只需要存在,这样我就可以删除标题行。

我相信您所说的是实现您要求的建议方法。我只是在一个我正在工作的项目上做了这个,并且选择了额外的模式

另一种选择是为在平面文件汇编程序之前执行的反汇编阶段编写自己的。解码阶段也会工作,但似乎拆解阶段是为这种工作类型


第二个选项将使头行的删除更加通用,并且可以跨多个不同的架构使用,因此您不必为每个平面文件架构创建单独的头架构。

您可以始终只解析头行而不映射它。

我建议通过平面文件架构向导执行此操作;将第一条记录定义为单条记录,然后将其他记录定义为重复记录。然后,在使用的任何映射或转换中,都可以忽略头记录。通过完全忽略FF向导时,您也可以忽略标题记录,但我更喜欢在模式中定义所有内容

查看帮助和microsoft教程,还有一篇关于代码项目的文章,其中包含了识别头记录。请注意,如果您知道标题记录的绝对位置(如:“始终在第一行”),则无需对记录标记进行处理


模式的存在有很多原因。其中一个原因是捕获一方生成的消息的结构,这实际上意味着协议。因此,即使您可能不使用字段,也最好按原样捕获模式。

我认为PreserveHeader的行为与您预期的不同。此属性仅确定是否将标头中的值提升到从反汇编程序发出的XML消息的上下文中。

谢谢您的回答。这证实了我的怀疑。我想我希望有“忽略第一行/标题”,而不必创建模式。