James Cobane

Forum Replies Created

Viewing 15 replies – 1 through 15 (of 1,085 total)
  • Author
    Replies
  • in reply to: Getting ACKs in Error Database #122449
    James Cobane
    Participant

      If you aren’t handling the replies via a proc or actually routing them, then they will hit the error database.  Also, do you have ‘Outbound Only’ checked on ‘Inbound’ tab of the thread?  If you don’t, if a reply message comes in when the connection is not expecting a reply, then it will hit the error database as well.

      Hope that helps.

      Jim Cobane – Henry Ford Health

      in reply to: Cloverleaf API Methods #122370
      James Cobane
      Participant

        It would be great if Infor would do a webinar for this functionality.  I have a bunch of scripts that utilize ncitlib to pull data from NetConfig(s), but supposedly using these API’s is the future direction for getting this kind of data.

        Jim Cobane – Henry Ford Health

        in reply to: Converting Large Spreadsheet to Table #122351
        James Cobane
        Participant

          I have a script that I created that reads a CSV file and utilizes an SQLite database to remove duplicates and generates a Cloverleaf lookup table.  Let me know if you would like a copy of it.

          Regards,

          Jim Cobane, Henry Ford Health

          in reply to: Suppress message if no Base64 PDF in OBX #122325
          James Cobane
          Participant

            Darrell,

            You could add a statement in your ITER that sets a temp variable if a PDF exists (i.e. @pdfExists, set it to ‘1’), then just after your ITER you can add an IF statement to check if @pdfExists is not equal to ‘1’, and SUPPRESS.

            Hope that makes sense.

            Jim Cobane – Henry Ford Health

            in reply to: Message flow question #122126
            James Cobane
            Participant

              Mischa,

              The Recovery DB is going to process the messages in a first in, first out (FIFO) basis unless you have code in place to change the message priority.  So, messages should queue in the order they are received.

              Depending on volume, just allowing the Recovery DB to handle the data is the path of least resistance (i.e. let it queue).  We have a couple of MDM interfaces that have very large messages, so for those we have some thread forwarding configurations in place to write messages to file then when the system comes back up, we read from those files at given pace to not overwhelm the receiving system.

              Jim Cobane – Henry Ford Health

              in reply to: TCL function to get todays day minus 5 #122044
              James Cobane
              Participant

                In Tcl you can simply use the clock scan command:

                set myDate [clock scan “5 days ago”]

                That will return the clock value from 5 days ago that you can then format:

                clock format $myDate

                 

                Jim Cobane – Henry Ford Health

                in reply to: document conversion interfaces into Epic Gallery #122011
                James Cobane
                Participant

                  David,

                  From the Epic documentation, in this scenario where we need to create DCS records for the documents (rather than update existing ones), you can either:

                  1. Use a fully HL7 option, where the messages contain the base64 encoded PDF in OBX-5

                  2. Use a Kuiper utility to migrate the binary data to the blob server, and use HL7 to file the metadata to create/update the DCS records

                  To use option 1, the HL7 would contain the PDFs already encoded in OBX-5.  But, it sounds like you may want to consider option 2.  You should contact your Epic TS.

                  Both of these options are described in a bit more detail here: Move Files to the Web BLOB

                  Jim Cobane – Henry Ford Health

                  in reply to: Help with xlateStrTrimLeft/Right #121852
                  James Cobane
                  Participant

                    Remember that you should treat xlateOutVals as a list

                    • This reply was modified 1 year, 2 months ago by James Cobane.
                    in reply to: Help with xlateStrTrimLeft/Right #121845
                    James Cobane
                    Participant

                      You could use the clock commands to reformat the date:

                      set dateIn [lindex $xlateInVals 0]

                      set dateOut [clock format [clock scan $dateIn -format “%Y%m%d”] -format “%m%d%Y”]

                      set xlateOutVals

                        (for some reason, it isn’t displaying the last portion of my “set xlateOutVals

                          ” command above)

                           

                          Hope that helps.

                          Jim Cobane – Henry Ford Health

                          • This reply was modified 1 year, 2 months ago by James Cobane.
                          • This reply was modified 1 year, 2 months ago by James Cobane.
                          • This reply was modified 1 year, 2 months ago by James Cobane.
                          • This reply was modified 1 year, 2 months ago by James Cobane.
                          • This reply was modified 1 year, 2 months ago by James Cobane.
                          James Cobane
                          Participant

                            I don’t know that I would recommend attempting to change the NetConfig programmatically from a script; I think you could unknowingly corrupt your NetConfig.  When I have had to do a mass change on the AutoStart settings in NetConfig in the past, I have done it via a text editor and simply done a search/replace of AUTOSTART 0 to AUTOSTART 1 (or visa versa) depending on the need.  I simply ensure that I back up the NetConfig before making this change, then load it in the GUI after the change to make sure it didn’t break.

                            Hope that helps.

                            Jim Cobane – Henry Ford Health

                            in reply to: FTP Filename in proc #121835
                            James Cobane
                            Participant

                              Jason,

                              Yes, this information is available within the DRIVER CONTROL portion of the metadata of the message.  Here is a snippet of Tcl code that you could put into a proc in the inbound context that would give you that information from the message:

                              set myklst [msgmetaget $mh DRIVERCTL]
                              keylget myklst FILENAME myFileName

                              Hope that helps.

                              Jim Cobane – Henry Ford Health

                              in reply to: SMATDB in IDE not up-to-date #121631
                              James Cobane
                              Participant

                                I would recommend opening an incident with Support.  It could be something as simple as adding some arguments to the JVM in the Advanced Tab on the Client preferences or even checking/unchecking items on the SMAT tab.  Support probably has some recommendations/best practices for performance related to the SMAT DB/GUI

                                Jim Cobane – Henry Ford Health

                                in reply to: Cloverleaf API – SMATDB #121550
                                James Cobane
                                Participant

                                  It would be great if Infor would produce/present a webinar series on how to interact with the Cloverleaf APIs.  We have many scripts that use the ncitlib functions that I would like to replicate with the CLAPI functionality.  Just my $.02

                                  Jim Cobane – Henry Ford Health

                                  in reply to: Killing messages using an XLATE #121549
                                  James Cobane
                                  Participant

                                    Rather than killing it in an Xlate, it would be more efficient to kill it in a tps proc on the route prior to translation.  Below is a snippet of code for the ‘run’ section of a tps proc for reference:

                                    run {
                                    # ‘run’ mode always has a MSGID; fetch and process it
                                    keylget args MSGID mh

                                    set disp “CONTINUE”

                                    set msg [msgget $mh]

                                    # get the message length in bytes
                                    set msg_len [string bytelength $msg]

                                    # check to see if the incoming message length in BYTES is more than 1MB
                                    if { $msg_len > 1000000} {
                                    set disp “KILL”
                                    }

                                    lappend dispList “$disp $mh”
                                    }

                                    return $dispList

                                     

                                    in reply to: Delete queued messages in a thread #121535
                                    James Cobane
                                    Participant

                                      Do you want to delete ALL the messages queued for that thread, or only the first one on the queue?

                                      You can use the Database Administrator tool from the IDE or the command line (depending on your preference and/or skill level).

                                      If you want to delete ALL the messages on the queue for that thread, then the command line option would be:

                                      hcidbdump -r -d destinationthread -D

                                      where destinationthread is the name of your outbound thread

                                      If you want to only delete the first queued message, then get the messageID of the first queued message (i.e. hcidbdump -r -d destinationthread -O i) and look at the ID of the first message queued (i.e. 0.0.12345) and use that in command for the single message.  It is likely the first queued message is in a state 16 if you are not getting ACKs from your outbound system.  Once you have the message ID then the command is:

                                      hcidbdump -r -m 0.0.12345 -D

                                      Where 0.0.12345 should be replaced with the actual message ID.

                                      I would recommend working with Infor Support if you are not comfortable or are unsure of how to proceed

                                      Jim Cobane – Henry Ford Health

                                      • This reply was modified 1 year, 9 months ago by James Cobane.
                                    Viewing 15 replies – 1 through 15 (of 1,085 total)