Forum Replies Created
-
AuthorReplies
-
February 20, 2012 at 9:32 pm in reply to: Message doesn’t reach inbound queue on bidirectional thread #76042
Thanks, Jim — I knew I was missing something, I had done something similar to this before, but no longer had it in place. I don’t need the code personally, but it probably wouldn’t hurt to post in case someone else is trying to do something similar.
On Linux (not sure on HPUX) you’ll also have a /etc/sysctl.conf where you can store the kernel.sem=x x x x value.
Here’s some pseudo-code to do what you’re looking for:
# assuming ‘mrn’ = patient id and ‘duid’ = document idset fn “/path/to/file/${mrn}_${duid}.txt”
set fp [open $fn w]# assuming ‘segs’ is a list containing all segments from msg
foreach _seg $segs {
[code]# assuming ‘mrn’ = patient id and ‘duid’ = document idset fn “/path/to/file/${mrn}_${duid}.txt”
set fp [open $fn w]# assuming ‘segs’ is a list containing all segments from msg
foreach _seg $segs {
I use a heavily customized NetConfig layout as my diagram. It works well for me and several support teams use print outs of it as a reference.
Terry Kellum wrote:I’m attaching a document that I created in 2009 that describes the transaction capture system I have in place.
Terry Kellum wrote:I use MySQL for capturing messages.
Charlie Bursell wrote:You should add the -strict flag to the string is command unless you want the empty string to also be true
Good stuff, thanks Charlie.
Assuming you’ve placed the value of that field into a variable of name ‘obr_13’:
Code:
if {[string is integer $obr_13]} {
return “{KILL $mh}”
} else {
# whatever non-killing magic you want here
}I do something similar on one of my procs. We have repeating ICD9 codes in an OBR-31 – I split that field by the repetition char into a list (obr31_list) then loop through each element in that list, creating a DG1 segment.
This is fairly old, so naturally I instantly spotted a few things I could optimize, but this should work for you (there’s some other cruft I do in the loop that I removed due to being specific to this interface):
Code:
set dg1_list {}for {set i 1} {$i < [llength $obr31_list]} {incr i} {
set tseg [regsub {^I9} [lindex $obr31_list $i] ""]
# break out of this loop if there is no field for seg
if {[string length $tseg] == 1} { break }lappend dg1_list "DG1|[expr $i + 1]|I9|$tseg|||A"
}FYI, there’s a typo on the regsub for ORC (changing it to OBC). No need to respond, I RTM.
Hate to bump on old thread, but has anyone successfully ported the client install for 5.7 or 5.8?
I’ve been working with getting 5.7 to run, but wanted to see if anyone out there has had success before I reinvent the wheel.
I keep all source code on a revision control system. I’d recommend git or SVN.
This is why I prefer to work on TCL procs in an editor outside of the IDE 🙂
Wow, I can’t believe I forgot that. Thanks guys. -
AuthorReplies