Sun Micro results message

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf Sun Micro results message

  • Creator
    Topic
  • #49851
    Kathy Riggle
    Participant

      I am working with a Sun Lab system, and hoping that someone else has found an answer to this question. I’ve tried several things and combed the archive – to no avail.

      The OBX-5 of a micro result is sent with carats (not tildes) separating the subfields:

      text1^text 2^text  3…

      The disassembled format looks like this:

      ..1(0).OBX.00561(0).[0]

      ..1(0).OBX.00561(0).[1]

      ..1(0).OBX.00561(0).[2]

      I want my outbound to look like this:

      ..1(0).OBX.00561(0).[0]

      ..1(1).OBX.00561(0).[0]

      ..1(2).OBX.00561(0).[0]

      I can get the results converted to tilde separators, but I can’t use that outbound value as the basis of the iteration. There’s got to be a way to do this, but I haven’t found it!

      Thanks in advance.

      Kathy

    Viewing 2 reply threads
    • Author
      Replies
      • #63849
        James Cobane
        Participant

          Kathy,

          What about replacing the ^ with ~ in this field using a pre-xlate proc, then you can just use normal iteration logic within the Xlate.  You could also get a little more complicated in the Xlate by splitting that field on the ^, counting the number of resulting list elements, and then use/increment your own iteration variable to step through the number of sub-components and map to the appropriate outbound repetition.

          But I think a pre-proc would be a better option.

          Jim Cobane

          Henry Ford Health

        • #63850
          Tom Rioux
          Participant

            What does your inbound and outbound variants look like?  I’ve done something similar to this with NTE’s for OBX’s.  How you do it has a lot to do with the grouping of the segments.

            Tom Rioux

          • #63851
            Tom Rioux
            Participant

              If you have the carats changed to tilde already, then iterate through them as such:

              Basis:   field    1(0).1(0).OBX.00561     %f1

              Copy Statement inside the Iterate:

              1(0).1(0).OBX.00561(%f1)   —>   1(0).1(%f1).OBX.00561

              This should work for you.  Let us know if you still run into errors.

              Hope this helps…

              Tom Rioux

          Viewing 2 reply threads
          • The forum ‘Cloverleaf’ is closed to new topics and replies.