Question to parse flat file

Home Page Forums BizTalk 2004 – BizTalk 2010 Question to parse flat file

Viewing 1 reply thread
  • Author
    Posts
    • #21720

      Flat file is follow following format

      10batchheaderinfo
      20contenttyp1
      30contenttype2info1
      30contenttype2info2

      90batchtrailerinfo
      10anotherbatchheader
      20….
      30..

      90anotherbatchtriler

      10,20,30,90 is to be tag identifier of each record type.batch is repeatable and content type 20,30 is min=0..max=unbounded,

      my intention is to parse the file like below

      <batchheader>
       <detail>
        <type20>
        <type30>
       </detail>
      <batchtraler>

      However, each time it is parsed to

      <batchheader>
       <detail>
        <type20>
       </detail>
       <detail>
        <type30>
       </detail>
      <batchtraler>

      Content type 20,30 goes to each individual detail record, how do I let BizTalk know that record type 30 follows record type 20 and the engine should combine the type 20 and type 30 in a single detail record instead of seperating them?

      Not sure if I make this clear, I do appreciate any comment

       

    • #21747

      <? xml version=1.0 encoding=utf-16?>
      <
      xs:schema xmlns:b=http://schemas.microsoft.com/BizTalk/2003 xmlns=http://FlatFileParse1.FlatFileSchema1 targetNamespace=http://FlatFileParse1.FlatFileSchema1 xmlns:xs=http://www.w3.org/2001/XMLSchema>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:schemaInfo standard=Flat File root_reference=Root default_pad_char= pad_char_type=char count_positions_by_byte=false parser_optimization=speed lookahead_depth=3 suppress_empty_nodes=false generate_empty_nodes=true allow_early_termination=false early_terminate_optional_fields=false allow_message_breakup_of_infix_root=false compile_parse_tables=false />
      <
      schemaEditorExtension:schemaInfo namespaceAlias=b extensionClass=Microsoft.BizTalk.FlatFileExtension.FlatFileExtension standardName=Flat File xmlns:schemaEditorExtension=http://schemas.microsoft.com/BizTalk/2003/SchemaEditorExtensions />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element name=Root>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false sequence_number=1 child_order=postfix child_delimiter_type=hex child_delimiter=0x0D 0x0A />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element maxOccurs=unbounded name=Batch>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo sequence_number=1 structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false child_order=infix child_delimiter_type=hex child_delimiter=0x0D 0x0A />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <xs:element name=Header>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo sequence_number=1 structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false tag_name=10 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element name=Field type=xs:string>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:fieldInfo sequence_number=1 justification=left />
      </
      xs:appinfo>
      </
      xs:annotation>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      <
      xs:element name=Detail>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false sequence_number=2 child_order=infix child_delimiter_type=hex child_delimiter=0x0D 0x0A />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element minOccurs=0 name=Type20>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo sequence_number=1 structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false tag_name=20 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element name=Field type=xs:string>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:fieldInfo sequence_number=1 justification=left />
      </
      xs:appinfo>
      </
      xs:annotation>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      <
      xs:element minOccurs=0 maxOccurs=unbounded name=Type30>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false tag_name=30 sequence_number=2 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element name=Field type=xs:string>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:fieldInfo sequence_number=1 justification=left />
      </
      xs:appinfo>
      </
      xs:annotation>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      <
      xs:element name=Trailer>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:recordInfo sequence_number=3 structure=delimited preserve_delimiter_for_empty_data=true suppress_trailing_delimiters=false tag_name=90 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:complexType>
      <
      xs:sequence>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:groupInfo sequence_number=0 />
      </
      xs:appinfo>
      </
      xs:annotation>
      <
      xs:element name=Field type=xs:string>
      <
      xs:annotation>
      <
      xs:appinfo>
      <
      b:fieldInfo sequence_number=1 justification=left />
      </
      xs:appinfo>
      </
      xs:annotation>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      </
      xs:sequence>
      </
      xs:complexType>
      </
      xs:element>
      </xs:schema> 

       

Viewing 1 reply thread
  • The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.