hi all,

i'm busy developing an ORM-interface using Hapi v2.2 and encountered some 
very strange behaviour when reading out OBX segments from the following 
multiple-order ORM_O01 message:

MSH|^~\&|SYSTEM|XXX|CLOVERLEAF|XXX|20141001170652|RISTECH|ORM^O01|1262|T|2.4
|||||||||
PID|1||1234567^^^XXX^PI~100000000^^^NLMINBIZA^NNNLD||TEST&&TEST^T^^^^^L||197
61201|M|TEST^^^||STREET 
10&STREET&10^^CITY^^1234^NLD^M||^PRN^PH^^31|^WPN^PH^^31||||14205|188780348||
|||||||||||
PD1||||||||||||||||||
PV1||||||||1106199999^GENERAL^SPECIALIST^^^^^^VEKTIS^^^^NPI|||||||||||14205|
||||||||||||||||||||||||20141001152757|||||||V
ORC|NW|66955^EPC|743||Arrived||^^^20141001130500^^R||20141001170652|RISTECH^
RADIOLOGY^TECHNOLOGIST.^^||1106199999^GENERAL^SPECIALIST^^^^^^VEKTIS^^^^NPI|
101001103^^^101001^^^^^NUCLEAR MEDICINE||||||||||||||||I|
OBR|1|66955^EPC|743|^^^1052000729^DMSA UPTAKE 
SCAN^L|R|20141001152757||||||||||1106199999^GENERAL^SPECIALIST^^^^^^VEKTIS^^
^^NPI||743|743|E32||||NM|Arrived||^^^20141001130500^^R||||^test|||||20141001
130500||||||||^^^1052000729^DMSA UPTAKE SCAN^L|
ORC|NW|66955^EPC|743||Planned||^^^20141001110500^^R||20141001170652|RISTECH^
RADIOLOGY^TECHNOLOGIST.^^||1106199999^GENERAL^SPECIALIST^^^^^^VEKTIS^^^^NPI|
101001103^^^101001^^^^^NUCLEAR MEDICINE||||||||||||||||I|
OBR|1|66955^EPC|743|^^^1052000728^INJECTION 
DMSA^L|R|20141001152757||||||||||1106199999^GENERAL^SPECIALIST^^^^^^VEKTIS^^
^^NPI||743|743|E33||||NM|Planned||^^^20141001110500^^R||||^test|||||20141001
110500||||||||^^^1052000728^INJECTION DMSA^L|
OBX|1|ST|WEIGHT^Weight patient (kg):||70|KG
OBX|2|ST|LENGTH^Length patient (cm):||180|CM

This message contains two orders (2x ORC+OBR), with the first order having 
no OBX and the second having two OBX segments. The following code:

        ORM_O01 orm = (ORM_O01) message;
        //System.out.println(orm.toString());
        int orderCount = orm.getORDERReps();
        for (int i = 0; i < orderCount; i++) {
                System.out.println("order("+i+") #OBX : " + 
orm.getORDER(i).getORDER_DETAIL().getOBSERVATIONReps());
        }

gives the expected output:
order(0) #OBX : 0
order(1) #OBX : 2

However... if i uncomment the .toString() line, i get the following wrong 
output:
order(0) #OBX : 1
order(1) #OBX : 2
The same thing also happens if i use 
"System.out.println(message.toString())" instead.

Any ideas what i'm doing wrong?

kind regards,

Tim de Wit


------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Hl7api-devel mailing list
Hl7api-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to