Home Page › Forums › BizTalk 2004 – BizTalk 2010 › Dynamic Xml generation in Disassembler Pipeline
- This topic has 3 replies, 1 voice, and was last updated 9 years, 2 months ago by
community-content.
-
AuthorPosts
-
-
June 23, 2010 at 7:17 AM #25043
Hi,
Currently I am generating XML from flat file after configuring schema in pipeline disassembler component, but now I want need such code which dynamically generates XML from flat file based on new fields added in flat file, not from fixed static schema. Is this possible if I know each field size and position in flat file through some configuration file?
Thanks
-
June 23, 2010 at 3:43 PM #25046
The Flat File Disassembler only works from a static schema definition.
Depending on what is changing in the flat file and how it is changing you may be able to use optional records and fields in your schema to cope with the change.
Or you may like to use a generic flat file schema and use a component in the pipeline to call an Xslt from a file to create the output message you need.
Or you could write your own custom disassembler that works from a config file.Can you give us an example of what is likely to change in this file?
-
June 24, 2010 at 1:10 AM #25050
Thanks Greg for your help, my current static schema looks like below
Header
@ID 0-8
Data
@A 8-17
@B 17-26
@C 26-40
-> Now Issue is this that in this Data segment we will need to add more attributes by passage of time with variable lengths, so we need some generic thing here that pipeline could resolve this in xml no matters if at one time i send 3 attributes under this Data segment or 5 in second time…….,
So, if generic flat file schema could be used here for problem like above, can you explain how we will use that?
Thanks again…
-
July 19, 2010 at 5:57 AM #25278
With a record containing fixed length fields it is impossible to determine the length of the next field without explicity declaring the new field in a schema.
The only way to dynamically parse an indeterminant number of fixed length fields based purely on the data is to include the field length in the message. Unfortunately the FF disassembler does not handle this scenario, but you could write a pre-parser that converts these fixed length fields into a delimited record.
Alternatively if you use a delimited structure, you can create a record with an unbounded number of fields. The FF disassembler will continue parsing fields until the end of the record.
-
-
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.