XML embedded in OBX;5.5 of MDM message

Clovertech Forums Read Only Archives Cloverleaf Cloverleaf XML embedded in OBX;5.5 of MDM message

  • Creator
    Topic
  • #50548
    Connor Armstrong
    Participant

      Hello,

      Has anyone received an MDM^T02 with XML encoded text in OBX;5.5 and had it post in Cerner Millennium?  I know this really isn’t Cloverleaf specific but wanted to inquire with the best.

      The sending system is McKesson and their CareEnhance Review Manager software.  They are going to populate OBX;5.3 with XML and have the XML encoded text in OBX;5.5.  

      On another note, is there any option in Cloverleaf to decode the XML and send plain text outbound in the OBX segment?

      We’re working on getting a sample message so I will attach that once I get it.

      We are Cloverleaf 5.4.1 on Windows 2003.

      Thanks!

      Connor

    Viewing 10 reply threads
    • Author
      Replies
      • #66564
        Wilson Wat
        Participant

          Did anyone reply to you…I need to do the same thing…Can you share your findings with me? Wilson Wat 267 479 1312 wilsonwat@ccpdocs.com

        • #66565
          John Mercogliano
          Participant

            We just set up Interqual’s ADT side but have not touched the outbound side yet.  I had planned on using the tcllib base64 package to decode the xml data.  Based on the CERMe HL7 quide this should be all we need to decode the data so that we can work with it. We are still about 3 months away before we plan on starting to working on the outbound side.

            Good luck.

            John Mercogliano
            Sentara Healthcare
            Hampton Roads, VA

          • #66566
            Charlie Bursell
            Participant

              No reason to use the Base64 package.  Cloverlead has built-in commands for base64

                   encode      Encodes to Base64

                   decode    Decodes from Base64

            • #66567
              Sandy McQuay
              Participant

                Anyone get this done for the outbound CareEnhance Review Manager?  I tried using the tcl package (per thread https://usspvlclovertch2.infor.com/viewtopic.php?t=3948&highlight=base64) by requiring base64 package in my proc.  When I pull out OBX-5 and try to decode using the method described in the other thread, all I get is junk.  It’s not readable at all.

                Here’s my code:

                set obx5 [hl7_get_field $data OBX 5]

                echo “Encoded OBX-5:n$obx5”

                set obx5 [base64::$type $obx5]

                echo “Decoded OBX-5:n$obx5”

              • #66568
                Charlie Bursell
                Participant

                  What is the value of type?  What do you get with the first echo?

                  Not enough here to provide help.

                  FWIW, I think the hl7 package (hl7_get_field, etc.) is one of the worse packages that was ever written.  Unless it is a different one than I ma thinking of, it goes through a complete parse of the message everytime you request a field. – A LOT OF OVERHEAD.

                  I am sorry to say that library of procs was written by one of our ex-employees and even sorrier to know it is still in use within the user community.

                  Just my opinion  ðŸ˜€   Which is worth less than the usual $0.02.

                • #66569
                  John Mercogliano
                  Participant

                    Sandy,

                     I have not gone any further but I remember when looking at the data that the actual data was in subfield 5 so after getting field 5 you will have to split the field on the ^ and do and lindex 4 to get the actual encoded data.

                    John Mercogliano
                    Sentara Healthcare
                    Hampton Roads, VA

                  • #66570
                    Sandy McQuay
                    Participant

                      John – Thanks for pointing out that the actual data is in subfield 5.  The code I posted works on the subfield.

                      Charlie – Sorry for not giving enought info.  Type  is encode or decode.  

                      The “hl7 package” we are using IS the old one.  Is there a new package available?  Or what would you suggest using instead?  We are moving to 5.7 on Red Hat by December and this is where we’re developing this interface.

                      Thanks for the help!

                    • #66571
                      Charlie Bursell
                      Participant

                        Assuming you are on .7 you have tcllib1.8 which is pretty well up to date.  The base-64 package there is pretty good.  There is a later version of tcllib. 1.11 I think, but I do not beleive the base64 package changed.

                        If you feel you need the latest you can always download tcllib from SourceForge

                      • #66572
                        Sandy McQuay
                        Participant

                          Hi Charlie – The base64 TCL library on 5.7 appears to work great (when you use it on the proper field  ðŸ˜³ ).  

                          For the hl7 package (i.e. hl7_get_field, etc.), what do you suggest replacing that with?  Is there an updated package available or is there a preferred method using TCL code to extract a specific field (or replace a field, etc.)?

                          Thanks for your contribution to this list!

                        • #66573
                          Charlie Bursell
                          Participant

                            The splits you have to do to replace the package is less than the time to use the package.

                            set fldSep [string index $msg 3]

                            set subSep [string index $msg 4]

                            set segList [split $msg r]

                            set PID [split [lsearch -inline -regexp $segList {^PID}] $fldSep]

                            set PID3 [lindex $PID 3]

                            If you need to later replace PID segment:

                            set pidLoc [lsearch -regexp $segList {^PID}]

                            set PID [split [lindex $segList $pidLoc] $fldSep]

                            set PID3 [lindex $PID 3]

                            How easy can it be?

                          • #66574
                            John Mercogliano
                            Participant

                              Sandy,

                               No problem, we are just waiting for them to understand that they need to store the visit information with the case from the hl7 message so they can send it out again otherwise we can’t file the message.  At least for us we need the account and visit info which they don’t provide.

                               The sad thing is this is a McKesson product and we are trying to file back into a McKesson product and they can’t talk 😡

                              I hope your having more luck,

                              John Mercogliano
                              Sentara Healthcare
                              Hampton Roads, VA

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