Search code examples
biztalkbiztalk-2010btahl7

BizTalk HL7 Adaptor (BTAHL7) error with MSH trailing delimiters


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...

Party configuration


Solution

  • 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.