Hi Greg,

Unfortunately I think you probably have the wrong list.

This mailing list is for HAPI HL7v2, which is a Java (not JavaScript)
library.

Cheers,
James

On Wed, Jun 15, 2022 at 11:55 AM White, Gregory (GE Healthcare) <
gregory.wh...@med.ge.com> wrote:

> Greetings all,
>
>
>
> I am somewhat new to Javascript and very new to HAPI so please forgive the
> naiveté of my question…
>
>
>
> I am trying to develop Javascript code for use in a Rhapsody engine that
> will handle (loop through) multiple OBR/OBX groupings in an ORU_R01 message
> (HL7 v2.6). My goal is to add an OBX segment to each group if/when an OBX
> exists where OBX-3 = 2907 within the group. My code only seems to work on
> the first OBR/OBX group. In my troubleshooting I have found that using
> hapiMessageIn.numberOfSegmentRepeats only seems to work if the segment
> identified comes consecutively. For example with a message like…
>
>
>
> MSH…
>
> PID…
>
> PV1…
>
> OBR|1|…
>
> OBX|1|…
>
> OBX|2|…
>
> OBX|3|ST|2907|…
>
> OBR|2|…
>
> OBX|1|…
>
> OBX|2|…
>
> OBX|3|…
>
> OBX|4|ST|2907|…
>
>
>
> …the countobr value from the following code block is 1, and the countobx
> value is 3.
>
>
>
> …
>
> var obr_exist = hapiMessageIn.segmentExists("OBR", 0);
>
> if (obr_exist == true) {
>
>       var countobr = hapiMessageIn.numberOfSegmentRepeats("OBR");
>
>       // Loop through each OBR
>
>       for (var r = 0; r < hapiMessageIn.numberOfSegmentRepeats("OBR");
> r++) {
>
>
>
>           // Get the OBX segment count
>
>           var obx_exist = hapiMessageIn.segmentExists("OBX", 0);
>
>           if (obx_exist == true) {
>
>                  var countobx =
> hapiMessageIn.numberOfSegmentRepeats("OBX");
>
>                  // Loop through each OBX and look for OBX-3.1 = 2907
>
>                  for (var x = 0; x <
> hapiMessageIn.numberOfSegmentRepeats("OBX"); x++) {
>
> ….
>
>           }
>
>      }
>
> }
>
> …
>
>
>
> With the countobr only being equal to 1 it never loops through/processes
> the second OBR/OBX grouping and therefore the output message will have the
> added OBX segment only in the first OBR/OBX group, like…
>
>
>
> MSH…
>
> PID…
>
> PV1…
>
> OBR|1|…
>
> OBX|1|…
>
> OBX|2|…
>
> OBX|3|ST|2907|…
>
> OBX|4|… (added OBX segment)
>
> OBR|2|…
>
> OBX|1|…
>
> OBX|2|…
>
> OBX|3|…
>
> OBX|4|ST|2907|…
>
> (no added OBX segment)
>
>
>
> Is there an issue with my syntax/use of the numberOfSegmentRepeats that
> may be causing this? Is there a better method you can propose to handle
> this scenario?
>
>
>
> Thanks in advance for your review and any suggestions you may have to
> resolve this issue.
>
>
>
> *Upcoming OOO dates: June 27- July 15 (PTO)*
>
> *                                        July 25 - 28 (Training) *
>
> *                                        Aug 4 - 8 (PTO)*
>
>
>
> *Gregory A. White*
> Interface Integration Engineer, Mural
>
> GE Healthcare
>
> T. +1 561 889 5673
>
>
> _______________________________________________
> Hl7api-devel mailing list
> Hl7api-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/hl7api-devel
>
_______________________________________________
Hl7api-devel mailing list
Hl7api-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to