You might get error in the application event log similar to: Event 5743 The adapter failed to transmit message going to send port "997_SP" with URL "C:\<output folder>". It will be retransmitted after the retry interval specified for this Send Port. Details:"Unable to read the stream produced by the pipeline.
Details: Error: 1 (Field level error)
Position in TS: 71
Data Element ID: AK44
Position in Segment: 4
6: Invalid character in data element
This is by design and documented at http://msdn.microsoft.com/en-us/library/bb226315(v=bts.70).aspx.
If the payload data contains characters that are also used as data, segment, or component separators, check Replace separators in payload with and specify a replacement character or hex. When generating the outbound X12 message, all instances of separator characters in the payload data will be replaced with the specified character or hex value.
1) Use the agreement property, “Replace the separators in payload with:” to set the component element separator from default ":" to another value ie. "$". The setting is applied for all the message types pertaining to the agreement.
2) Override the component separator (ISA16) for 997 using dynamic envelope overrides (Overriding EDI Headers). The 997 XML generated by EDI Disassembler will have a message type context property with value pertaining to 997. Write a custom pipeline component before the EDI Assembler to look for the message type context property for 997 message and write the override ISA16 context property. In that case only the 997 will go out with a different component separator (ISA16)and the rest of the message types will go out without modification.