Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
HL7 Escape Characters Help
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  5 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Marc Lang  
View profile  
 More options May 11 2012, 10:40 am
From: Marc Lang <marc.c.l...@gmail.com>
Date: Fri, 11 May 2012 15:40:46 +0100
Local: Fri, May 11 2012 10:40 am
Subject: HL7 Escape Characters Help

Hi,

We have a supplied who currently sends labs results in HL7 like this:

MSH|^~\&|SGHHIS|.|iLABTP|.|20120430132322||ORU^R01|7336|P|2.4
PID
PV1
ORC
OBR
OBX|1|NM|LYMPH^Lymphocytes||4.0|x10^9/L|1.0-2.8||||F

However, they have stated in a next version they wish to send the "^"
escaped, like so:

MSH|^~\&|SGHHIS|.|iLABTP|.|20120430132322||ORU^R01|7336|P|2.4
PID
PV1
ORC
OBR
OBX|10|NM|LYMPH^Lymphocytes||4.0|x10\S\9/L|1.0-2.8||||F

I have ran a sample message through, and it appears as though Ensemble is
not un-escaping the \S| to ^ on the way out, so the receiving system is
displaying the result as: x10\S\9/L

Any idea how I would get ensemble to un-escape?

Thanks


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Atkinson, Gary  
View profile  
 More options May 11 2012, 10:53 am
From: "Atkinson, Gary" <GAtkin...@bwmc.umms.org>
Date: Fri, 11 May 2012 10:53:59 -0400
Local: Fri, May 11 2012 10:53 am
Subject: RE: [InterSystems-EnsHlth] HL7 Escape Characters Help

I do the reverse of this, but you'll get the idea...

ClassMethod Unescape(pData As %String = "") As %String [ Final ]
{
            Set replace("\.br\")=$C(13)
            Set replace("\F\")="|"
            Set replace("\R\")="~"
            Set replace("\S\")="^"
            Set replace("\E\")="\"
            Set replace("\T\")="&"
            Quit $$replaceArray^EnsUtil(pData,.replace)

}

Thanks,
Gary

________________________________

From: ensemble-in-healthcare@googlegroups.com
[mailto:ensemble-in-healthcare@googlegroups.com] On Behalf Of Marc Lang
Sent: Friday, May 11, 2012 10:41 AM
To: InterSystems: Ensemble in Healthcare
Subject: [InterSystems-EnsHlth] HL7 Escape Characters Help

Hi,

We have a supplied who currently sends labs results in HL7 like this:

MSH|^~\&|SGHHIS|.|iLABTP|.|20120430132322||ORU^R01|7336|P|2.4

PID

PV1

ORC

OBR

OBX|1|NM|LYMPH^Lymphocytes||4.0|x10^9/L|1.0-2.8||||F

However, they have stated in a next version they wish to send the "^"
escaped, like so:

MSH|^~\&|SGHHIS|.|iLABTP|.|20120430132322||ORU^R01|7336|P|2.4

PID

PV1

ORC

OBR

OBX|10|NM|LYMPH^Lymphocytes||4.0|x10\S\9/L|1.0-2.8||||F

I have ran a sample message through, and it appears as though Ensemble
is not un-escaping the \S| to ^ on the way out, so the receiving system
is displaying the result as: x10\S\9/L

Any idea how I would get ensemble to un-escape?

Thanks

--
You received this message because you are subscribed to the Google
Groups "InterSystems: Ensemble in Healthcare Community" group.
To post to this group, send email to
Ensemble-in-Healthcare@googlegroups.com
To unsubscribe from this group, send email to
Ensemble-in-Healthcare-unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/Ensemble-in-Healthcare?hl=en


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marc Lang  
View profile  
 More options May 11 2012, 10:55 am
From: Marc Lang <marc.c.l...@gmail.com>
Date: Fri, 11 May 2012 15:55:39 +0100
Local: Fri, May 11 2012 10:55 am
Subject: Re: HL7 Escape Characters Help

Sorry, think I understand now - I need to unescape the entire message, and
send the unescaped message out to receiving system, as it appears to do no
unescaping, and treats  x10\S\9/L as literal

My production is a simple TCP HL7 Service / Router w Transform / TCP HL7
Operation

On 11 May 2012 15:40, Marc Lang <marc.c.l...@gmail.com> wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ted Peck  
View profile  
 More options May 11 2012, 11:58 am
From: Ted Peck <tedp...@intersystems.com>
Date: Fri, 11 May 2012 11:58:04 -0400
Local: Fri, May 11 2012 11:58 am
Subject: Re: [InterSystems-EnsHlth] Re: HL7 Escape Characters Help

To recap - it sounds like you have a sending lab system and a receiving
system that are both non-compliant in the same way and thus are happy
together. Now the lab system wants to get compliant with the HL7
escaping standard but the receiving system isn't going to change.

Since the lab results are in a pretty strict format you can probably
just use a DTL to unescape the fields you know will need it, to prepare
them for sending to the non-compliant receiving application.

There are methods Escape() and Unescape() in class EnsLib.HL7.Segment
that you can use.

Ted

On 5/11/2012 10:55 AM, Marc Lang wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ted Peck  
View profile  
 More options May 11 2012, 2:15 pm
From: Ted Peck <tedp...@intersystems.com>
Date: Fri, 11 May 2012 14:15:59 -0400
Local: Fri, May 11 2012 2:15 pm
Subject: Re: [InterSystems-EnsHlth] Re: HL7 Escape Characters Help

The Escape() and Unescape() methods are designed to work on a segment
instance because it is critical for them to know what the separators
apply to the segment content being modified.  However this means you
can't use the standard assign statements generated by drag-and-drop in
the DTL editor, you have to use a code block something like this:

<code> Set tSegObj=source.GetSegmentAt("OBX") </code>

then a standard assign:
<assign property=target.{OBX:6}
value=tSegObj.Unescape(tSegObj.GetValueAt(6)) />
or
<assign property=target.{OBX:6} value=tSegObj.Unescape(source.{OBX:6}) />

On 5/11/2012 11:58 AM, Ted Peck wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »