I have my receive ports/locations set up, schemas deployed and RAD party set up to allow trailing deliminters.
If I send a message to BizTalk with no trailing delimiters everything works fine:
MSH|^~\&|RAD|TEST|ITS||201304111010||ORU^R01|J1908877|D|2.3|||AL|NE
If I send a message to BizTalk with trailing delimiters, which is how it looks coming out of our HCIS:
MSH|^~\&|RAD|TEST|ITS||201304111010||ORU^R01|J1908877|D|2.3|||AL|NE|||||||||
I get the following ACK from BizTalk:
MSH^1^21^102&Data type error&HL7nnnn: MSH|^~\&|ITS||RAD|TEST|201304111010||ACK^R01^ACK|7788091J|D|2.3 MSA|CR|J1908877 ERR|MSH^1^21^102&Data type error&HL7nnnn
and an error in the eventlog:
Error happened in body during parsing Error # 1
Alternate Error Number: 301 Alternate Error Description: Schema http://microsoft.com/HealthCare/HL7/2X#ORU_R01_23_GLO_DEF not found Alternate Encoding System: HL7-BTA
I know the problem isn't the schema, because if I manually remove the trailing deliminters it works fine...
The Allow Trailing Delimiters setting allows delimiters for optional fields, but not for extra fields. There are only 19 fields in the MSH segment in HL7 2.3.