Schema which I am using in the Flat file disassembler is a Document Envelope
schema. Location in the error message is one of the documents which I
imported into the envelope schemas. As a note I am using a separate project
for schemas and the custom pipeline which I am calling with in my
orchestration project. I tried moving the custom pipeline into my
orchestration project but still I am getting the same error. Any help is much
appreciated.
Regards,
Suresh
If you do not have any custom components in your pipeline, you might want to
try using the "ffdasm.exe" tool in the SDK (See "Pipeline Tools" in the SDK
documentation online at http://tinyurl.com/lmb48). You can use this tool to
test your pipeline without having to deploy first. This makes it easier to
debug schema-related or pipeline issues, as well as test different
configurations. Again, the documentation will help here.
One thing you might want to experiment with as well is the envelope switch
itself. You may find yourself with a working schema without the need for it
to be an envelope. Another thing you may want to verify is the setting
configured on your disassembler component -- make sure the Document Schema
property for the disassembler component points to the proper flat file schema.
On a final note, there is no problem keeping maps, schemas, and pipelines in
separate projects; this would not be the cause of the problem you are having.
Your problem is just as the error message says - the message does not match
the schema given. Make sure that your pipeline project references the project
containing your schemas so you can set the Document Schema property with the
correct value.
Hope this helps...
Lucas
--
===========
Lucas R. Vogel
I think you're relying upon your past experience with the Xml Disassembler, and the Flat File Disassembler has different behavior. All of the steps you've gone thru work when dealing with Xml Files in an envelope pattern and the Xml Disassembler. However, since the Flat File Disassembler has no property for the Envelope Schema, just a Document Schema property, it inherently understands Enveloping and Debatching. All it requires is a Document schema that is annotated with the correct Child Delimiter (Hex, CRLF, Postfix in our case) and it will debatch a flat file into Child Records without needing to know anything about the Envelope. Additionally, this same Document Schema will fail when you try to test it against a batch flat file containing multiple records when you try to unit test it in Visual Studio using the Validate Instance tool. The appropriate testing tool to use is FFDasm.exe, which is one of the Pipeline tools; read about them here: http://msdn2.microsoft.com/en-us/library/aa547988.aspx
There’s a BizTalk Sample for Debatching Flat Files, you can find it here:
C:\Program Files\Microsoft BizTalk Server 2006\SDK\Samples\Pipelines\AssemblerDisassembler\EnvelopeProcessing
BizTalk Utilities - Frustration free BizTalk Adapters
http://www.topxml.com/biztalkutilities