I am getting '?' characters replacing Portuguese characters in HL7 messages
generated using the BTAHL7SendPipeline.
The application uses Latin characters ISO 8859/1. Even when I set MSH-18 to
"8859/1", as required by the HL7 norm, the messages still don't present
Portuguese characters (like "à", "ã", "é", etc.).
Is there a way to solve this?
Thank you and best regards,
Nuno
My apologies for the late response.
In order to support non ASCII characters, you will need to know the
hexidecimal value of the character that you want to use, and then escape
it. The escape character is represented in MSH02_3. So in example below,
the escape character is \ .
MSH|^~\&|srcAppsrc^AppUid|srcFac^srcFacUid|srcAppsrc^AppUid|dstFac^dstFacUid
|200307092343|sec|ADT^A01|msgid2134|P|2.3.1|||AL|AL||ASCII
If you want to add in a non ASCII character, you would have to type \Xabcd\
where abcd is the hex value for that character. It’s up to their
application to decipher the escaped sequence.
Also, you could have a custom receive pipeline to do this encode for you
such that when it reaches BTS, the non-ascii chars have been replaced. And
a custom send pipeline to decode the escaped hex char back into the "real"
character.
Thanks,
Stuart Landrum