Quantcast
Viewing all articles
Browse latest Browse all 872

Flat File Disassembler Component

 

Hi all,

 

I have several different flat files I have to consume.  I would like to be able to drop them all into one receive location and use one flat file pipeline to disassemble them.  I created a receive pipeline and put in several flat file disassembler components, configuring each for one of the appropriate document schema.  I assumed one could do this from the language in BTS 2006 R2 help for the SchemaResolverComponent.  It reads:

 

The flat file disassembler component normally requires you to define a parsing schema at design time. So if you expect to receive different flat file documents on the same receive location, you typically include several flat file disassemblers in the receive pipeline, one for each schema. At run time, the correct disassembler component is selected using a pipeline probing mechanism. However, this approach is expensive if you have many flat file schemas because probing for every corresponding disassembler component degrades pipeline performance.

 

After deploying my pipeline, however, I got errors like the one below.

 

Event Type: Error
Event Source: BizTalk Server 2006
Event Category: BizTalk Server 2006
Event ID: 5753
Date:  7/12/2008
Time:  22:32:27
User:  N/A
Computer: 
Description:
A message received by adapter "FILE" on receive location "Receive Location_EMDEON.RPT4" with URI "D:\HIPAA_HOME\EMDEON_RPT4\*.*" is suspended.
 Error details: An output message of the component "Flat file disassembler" in receive pipeline "HMOS.BizTalk.Pipelines.FF_ReceivePipeline.FlatFileReceivePipeline, HMOS.BizTalk.Pipelines.FF_ReceivePipeline, Version=1.0.0.0, Culture=neutral, PublicKeyToken=27ef7ae893a91467" is suspended due to the following error:
     Unexpected data found while looking for:
'\n'
The current definition being parsed is Root. The stream offset where the error occured is 268. The line number where the error occured is 7. The column where the error occured is 12. .
 The sequence number of the suspended message is 1. 
 MessageId:  {F7B3BE2F-5504-40AE-8973-A08F073D6131}
 InstanceID: {3BB9BC41-2394-4C1B-A9F2-9DD97D7A7641}

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

 

Evidently, the "pipeline probing mechanism" mentioned in BTS help is not part of the pipeline already?  How do I enable this one pipeline with multiple flat file disassembler components to be able to resolve which disassembler component to use for a given message?  (The SchemaResolverComponent in the SDK is one obvious answer, but I was really hoping to avoid it, if possible).

 

Thanks.


Viewing all articles
Browse latest Browse all 872

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>