TrxID HL7

Clovertech Forums Cloverleaf TrxID HL7

  • Creator
    Topic
  • #117566
    Stewart
    Participant

      Can any field be used for TrxID?  Is this the most efficient method to filter routed raw messages?

      For example, I have an inbound ADT with several routes.  I have a TCL proc to filter based on facility (MSH|4).  In one of these routes I only want a certain facility to be sent.   I understand doing this with a translation isn’t efficient.  Should this be done w/ the TrxID or the PROC?  If w/ the PROC, where’s the best place to insert the PROC?

    Viewing 3 reply threads
    • Author
      Replies
      • #117567
        James Cobane
        Participant

          If you only want a specific facility to go on the existing route, you should handle it using a filter proc on that route.

          Hope that makes sense.

          Jim Cobane

          Henry Ford Health

        • #117568
          Vince Angulo
          Participant

            Agreed.  Insert a proc on the route detail to kill undesired facilities.

          • #117572
            Jeff Dinsmore
            Participant

              We use a trxid UPOC proc for inbound “Trx ID Determination Format:”

              Below is a proc that returns <msg type>_<sending facility> – something like “CRMC_ADT”

              To improve speed, it reads only the first 101 characters of the msg string.

              On normal sized messages it was fast enough, but when used for messages with encoded PDF, for example, it could slow down a bit without this technique.

              proc trxid_sending_facility { msgId } {

              # read message
              set msg [msgget $msgId]

              # read encoding characters
              set fs [string index $msg 3]
              set sfs [string index $msg 4]

              set fieldList [split [string range $msg 0 100] $fs]

              set msgType [lindex [split [lindex $fieldList 8] $sfs] 0]
              set sending_facility [string trim [lindex $fieldList 3]]

              # return trxid
              return “$sending_facility\_$msgType”

              }

              Jeff Dinsmore
              Chesapeake Regional Healthcare

            • #117582
              Charlie Bursell
              Participant

                Jeff:
                Even more succinct would be something like:

                set msg [msgget $msgId 0 100]

                That way you only read in 100 bytes from the message handle.   🙂

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

            Viewing 3 reply threads
            • You must be logged in to reply to this topic.