There is occasionally a time when you get messages that are ‘batched’ together meaning the messages come in like this

MSH

MSH

MSH

….

Or they can come in with the file header and trailer and one or more batch header and trailers like this

FHS (file header segment)

BHS (batch header segment)

MSH

MSH

BTS (batch trailer segment)

BHS

MSH

BTS

FTS (file trailer segment)

When you run the file through BizTalk, the subscription engine does not pick up the message, in looking at the details of the message, it looks like this (notice that ParseError is False):

and the body is unparsed

In the BTAHL7 Configuration Explorer you need to turn fragmentation on

The reason why this is happening is because the pipeline component isexpecting the start block (SB) and end block (EB)to be in the data stream so it knows how to seperate each of the messages, if fragmentation is not turned on and it is getting multiple messages, in the messagebox you will get a block of text,negative ParseError and the inability to transform data, it will only be used for routing purposes.

Hope that this helps explain something that is not quite clear from the documentation, or at least anything that I could find.