HL7 message error- segment ORC

298 views
Skip to first unread message

r.be...@solilog.fr

unread,
Dec 24, 2013, 12:18:55 PM12/24/13
to Ensemble-in...@googlegroups.com
Hi everyone,

I'm trying to create an ensemble production where a HL7 OML021 message is sent from an service to an opération without any changes.
This is the initial message :

MSH|^~\&|ALERT|AHP|GLIMS||20131210194648||OML^O21^OML_O21|293190|P|2.5|||AL|AL|
PID|1||876582^^^GMAHP||BUSSON^Anne-Sophie||19840603|F||||||06 10 88 49 90||||||||||||||||
PV1|1|E|||||||||||||||||130180009|||||||||||||||||||||||||20131210201800||
ORC|NW|1681973^ALERT||1643469|||^^^^||20131210204636|||578464|||||1|
OBR|1|1681973^ALERT||GOP^Transaminases^GLIMS|||20131210204636||||||||||||||||||||^^^^^R||||||||||
NTE|1|||OD|
SPM|1|&GmAHP|||||||||||||||20131210204636|
ORC|NW|1681974^ALERT||1643469|||^^^^||20131210204636|||578464|||||1|
OBR|1|1681974^ALERT||VS^Vitesse de sédimentation (VS)^GLIMS|||20131210204636||||||||||||||||||||^^^^^R||||||||||
NTE|1|||OD|
SPM|1|&GmAHP|||||||||||||||20131210204636|
ORC|NW|1681975^ALERT||1643469|||^^^^||20131210204636|||578464|||||1|
OBR|1|1681975^ALERT||AGLEG^Antigène Légionnelle^GLIMS|||20131210204636||||||||||||||||||||^^^^^R||||||||||
NTE|1|||OD|
SPM|1|&GmAHP|||||||||||||||20131210204636|
OBX|1|CE|Origine|1|||||||||||

However only a part of the message is sent , all the segments after the second SPM segment are missing.  when i created a simple DTL to perform a test , it displays the following error after the transformation :

Build Map Status = 'ERREUR <EnsEDI>ErrMapRequired: Required ORCgrp(1).OBRgrp.PIDgrpgrp(1).ORCgrp(1).OBR Element is missing in segment 15'

When i tried to debug by adding line by line , the problem occured in the second ORC segment.
Any clue about this ?

Thank you
Raouf




Andy Picou

unread,
Dec 24, 2013, 2:42:22 PM12/24/13
to Ensemble-in...@googlegroups.com

Raouf,

 

The last two SPM segments are out of place. On the Message Content Viewer hover over the segment names and it will briefly give you the object name of the actual segment being populated. For example the first ORC is ORCgrp(1).ORC.  The SPM segment is ORCgrp(1).OBRgrp.SPMgrp(1).SPM. The second ORC segment is ORCgrp(1).OBRgrp.PIDgrpgrp(1).ORCgrp(1).ORC, a group which does not define a SPM segment.

--
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...@googlegroups.com
To unsubscribe from this group, send email to Ensemble-in-Healt...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/Ensemble-in-Healthcare?hl=en
---
You received this message because you are subscribed to the Google Groups "InterSystems: Ensemble in Healthcare" group.
To unsubscribe from this group and stop receiving emails from it, send an email to Ensemble-in-Healt...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

David Loveluck

unread,
Dec 24, 2013, 4:17:26 PM12/24/13
to Ensemble-in...@googlegroups.com

If you don’t try and parse the message it really doesn’t matter if the message structure is invalid, but if you need to use DTL or rules it normally does.

Up to the point where you get the second NTE segment, the structure could be interpreted in two ways. It could be ORCgrp(1).OBRgrp.PIDgrpgrp(1).ORCgrp(1).NTE(1) with the ORC segment nested within the outer ORCgrp.

Or it could be interpreted as a repetition of the outer ORCgrp.

It seems that Ensemble has taken the wrong interpretation and when it finds the SPL segment it says it is an error. If Ensemble had made the other choice everything would be fine. More sophisticated look-ahead parsing would be required to distinguish the two cases.

 

If you will never have a nested ORC segment, I think that creating a  custom schema that avoids the ambiguity by removing the  ORCgrp I have circled in red in the screen shot should work.

 

However, your original problem statement that segments after SPM aren’t sent isn’t explained. The message shouldn’t be truncated just because the structure is invalid. Can you clarify what you were doing and what exactly you saw when only half of the message was sent from the BS to the BO?

 

Dave

 

r.be...@solilog.fr

unread,
Dec 26, 2013, 4:10:20 AM12/26/13
to Ensemble-in...@googlegroups.com

To post to this group, send email to Ensemble-i...@googlegroups.com
To unsubscribe from this group, send email to Ensemble-in-Healthcare-unsub...@googlegroups.com


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

To unsubscribe from this group and stop receiving emails from it, send an email to Ensemble-in-Healthcare+unsub...@googlegroups.com.

--
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-i...@googlegroups.com
To unsubscribe from this group, send email to Ensemble-in-Healthcare-unsub...@googlegroups.com


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

To unsubscribe from this group and stop receiving emails from it, send an email to Ensemble-in-Healthcare+unsub...@googlegroups.com.

r.be...@solilog.fr

unread,
Dec 30, 2013, 5:15:03 AM12/30/13
to Ensemble-in...@googlegroups.com
As you suggested in your replies , i created a new custom schema without the second ORC segment. and it fixed the issue.

Thank you very much
Reply all
Reply to author
Forward
0 new messages