What is the simplest way to remove the header row from a flat file in BizTalk? I have implemented this by creating a separate schema for the header row (and one for the body) and then set the HeaderSpecName property in the 'Configure Pipeline' dialog to the header schema I've just created and then the PreserveHeader property to false. My problem, however, is that with this solution I need to create a schema that does nothing other than it needs to exist so I can remove the header row.
相关问题
- Biztalk Log4Net [closed]
- DocumentSpecNames?
- VS 2012 .user file causes unnecessary builds
- How do I set the MSMQ Message Extension Using BizT
- BizTalk - 0 parameter web message not being sent i
相关文章
- BizTalk - 0 parameter web message not being sent i
- How can I return HTTP-400 from a BizTalk Rest serv
- mapping a string containing xml in BizTalk
- Biztalk and the best way to call web service
- Network Load Balancing Biztalk Instances
- How can I set SB-Messaging adapter credentials sec
- BIZTalk210 PowerScript的停止和启动发送端口(BIZTalk210 powers
- 平坦化在BizTalk重复结构(Flattening repeating structure in
I don't think PreserveHeader acts as you may expect. This property simply determines whether or not values from the header are promoted into the context of the XML message that comes out of the disassembler.
i recommend doing this through the flat file schema wizard; define your first record as a singular record and then your other records as repeating records. then in whatever map or transformations you're working with you can just ignore the header record. you could also ignore the header record when going through the FF wizard by ignoring it altogether, but i prefer to have everything defined in my schemas...
check out the help and microsoft tutorials, also there's a decent article on the code project that incorporates identifying header records. note that if you know the absolute position of the header record (like: "always the first line") you don't need to mess with record tagging.
http://www.codeproject.com/Articles/13706/Creating-Flat-File-schemas-using-the-BizTalk-Serve
The schema exists for many reasons. One such reason is to capture the structure of the message generated by a party which effectively means the agreement. So it is good to capture the schema as it is even though you may not use the fields.
You could always just parse the header row and not map it.
I believe what you stated is the recommended way to do what you are asking. I just had to do this on a project i am working on and chose to have the extra schema.
Another option would be to write your own custom pipeline component for the Disassemble stage that executes before the flat file dissassembler. The Decode stage would work too, but it seems that the disassemble stage is made for this type of work.
This second option would make the removing of the header row more generic and could be used across many different schemas so you wouldn't have to create a separate header schema for each flat file schema.