Charlie Bursell

Forum Replies Created

Viewing 15 replies – 1 through 15 (of 1,820 total)
  • Author
    Replies
  • in reply to: remote side probably shut down in CL 2022.09 #121547
    Charlie Bursell
    Participant

      Have you notified Support?

      in reply to: Does Cloverleaf Client Compatible with Windows 11 #121513
      Charlie Bursell
      Participant

        Look at the release notes.  Latest version supports W11 for client, sever for demo only

        in reply to: TCL Error #121470
        Charlie Bursell
        Participant

          Shouldn’t
          if { [hl7::get_field hl7 PID.3.($1).5] eq “MR”} {
          Be
          if { [hl7::get_field hl7 PID.3.($i).5] eq “MR”} {

          With that said I don’t understand the repeated use of the hl7 package when it is so easy to simply split the message into segments and then into fields to get what you need.  The package is not very ergonomic since with each call it needs to parse the message.

          I guess to each his own 🙂

          in reply to: So long, and thanks for all the fish. #121428
          Charlie Bursell
          Participant

            HCI Link!  That brings back ghostly memories (an inside joke).  Rob is the last of us (HCI/Quovadx/Infor and others) from those days.   Not very many in the customer base either.

            You are so right Jim.  He will be sorely missed!

            in reply to: Retrieving the active Alert file #121385
            Charlie Bursell
            Participant

              Seems to me to be overkill unless I am missing something.

              Simply create multiple Alert files and give each some meaningful name like weekend.alrt, etc.   Make sure you save a copy of your stardard alerts file to something like standard.alrt. Then when you need your special alerts simply rename the alert file you want to use to default.alrt.  Then run hcisitectl.  When no longer needed rename standard.alrt to default.alrt and run hcisitectl again.

              This could be easily scripted if need be and, INHO, much easier than traversing and editing an alert file.

              As I said, maybe I am missing something here.

              Charlie Bursell
              Participant

                Must be large messages where multiple packets are received.  Should it be inherent on the receiving application to buffer those packets until a complete message is received? For example, assuming MLP HL7 data, Cloverleaf noting a packet with a start character of x0b (vertical Tab),  would buffer the message until 1c0d (File separator/Carriage Return)  is received

                Am I missing something?

                in reply to: Running a shell script in an alert #121159
                Charlie Bursell
                Participant

                  As I have said before, stopping and starting threads can be a bit ify at times.  You don’t know how much more the thread might attempt to do before stopping or even if it stops at all.  It all depends on busy the process is.  The command may time out before it is executed.

                  I find it safer to stop the process even if it means putting a thread in a process by itself or with other threads you don’t mind stopping/starting a the same time.  The process stop command will kick the process to death if it does not stop naturally.

                  Just my $0.02.

                  in reply to: x12 raw ack help #121158
                  Charlie Bursell
                  Participant

                    If you used the splitX12 proc prior to Xlate the ISA data should be in the metadata.

                    Here is a snippet from the X12MetaData_template that resides in $HCIROOT/tclprocs.

                    Perhaps you could use it as a template to extract the fields you need.

                    set USER_DATA [msgmetaget $mh USERDATA]
                    if {[catch {set ISA_DATA [keylget USER_DATA ISA]}] == 0} {
                    set i 1
                    while { $i <= 16 } {
                    if {[info exists ISA($i)] == 0} {
                    set ISA($i) [lindex $ISA_DATA $i]
                    }
                    incr i
                    }
                    }

                    in reply to: NetConfig extract “DEST” and “TRXID” #121120
                    Charlie Bursell
                    Participant

                      As Jim said you can use the NCI interface.  The commands are in the online docs.

                      If me I would do something like: (Assuming you want current site NetConfig)

                      netconfig load $::HciSiteDir/NetConfig

                      foreach conn [netconfig get connection list] {

                      set data [netconfig get connection data $conn]
                      set klst [keylget data DATAXLATE]

                      foreach {full part} [regexp -all -inline {DEST (.*?)\}} $klst] {
                      echo THREAD $conn –> $part
                      }
                      }

                      Note: Only threads with destinations will be listed as others will return empty from regexp command

                      Note the use of the regexp inline command.  To me, much easier than trying to drill down further as now you get into lists of keyed lists, etc.

                      I hope I did not misunderstand what you wanted.  If so this will still give you a kick start.

                       

                      Charlie Bursell
                      Participant

                        The “copy” method

                        The “copy” method copies data from a file into a table. It returns the number of rows processed successfully from the file. The syntax of the copy method looks like this:

                        <i>dbcmd</i>  <b>copy</b>  <i>conflict-algorithm</i>   <i>table-name </i>  <i>file-name </i>     ?<i>column-separator</i>?   ?<i>null-indicator</i>?

                        Conflict-algorithm must be one of the SQLite conflict algorithms for the INSERT statement: <i>rollback</i>, <i>abort</i>, <i>fail</i>,<i>ignore</i>, or <i>replace</i>. See the SQLite Language section for ON CONFLICT for more information. The conflict-algorithm must be specified in lower case.

                        Table-name must already exists as a table. File-name must exist, and each row must contain the same number of columns as defined in the table. If a line in the file contains more or less than the number of columns defined, the copy method rollbacks any inserts, and returns an error.

                        Column-separator is an optional column separator string. The default is the ASCII tab character \t.

                        Null-indicator is an optional string that indicates a column value is null. The default is an empty string. Note that column-separator and null-indicator are optional positional arguments; if null-indicator is specified, a column-separator argument must be specified and precede the null-indicator argument.

                        The copy method implements similar functionality to the <b>.import</b> SQLite shell command.

                        in reply to: “and” alert and Source Count #121094
                        Charlie Bursell
                        Participant

                          Seems to me your “AND” will not work.  You are sayin the thread must be UP and Opening – impossible.  This is an OR function

                          in reply to: Trouble opening SMATDB using CL tool #121087
                          Charlie Bursell
                          Participant

                            What trouble are you having?  There should not be a problem.

                            in reply to: Run hcicmd from a tcl script #121076
                            Charlie Bursell
                            Participant

                              hcicmd will always run in the current site.

                              You can exec any executable from Tcl.  How it behaves depends on how it is written.  Where the output goes where it expects input from dependencies, etc.

                               

                              in reply to: Run hcicmd from a tcl script #121045
                              Charlie Bursell
                              Participant

                                The only problem I see here is that thread may or may not stop.  Depending how busy the process is the command may time out.  No clean up needed for stopping a thread as all of the resources are assigned to the process.  There is a perl command in $HCIROOT/bin named hcienginestop.pl which can be called but it will stop all.  You could take a look and see how it does cleanup.

                                in reply to: High Inbound Message Threshold alert? #121008
                                Charlie Bursell
                                Participant

                                  Something to remember here when measuring number of messages over a period of time.  It will take the engine to get everything loaded and processing at a stable rate.  Any measurement taken should take that into consideration or you will get a skewed  result.  Get the engine stable then reset the counts and go from there.

                                  Just a thought.

                                Viewing 15 replies – 1 through 15 (of 1,820 total)