[613] | 1 | LA7VORUA ;DALOI/JMC - Builder of HL7 Lab Results NTE ; 4/10/2002
|
---|
| 2 | ;;5.2;AUTOMATED LAB INSTRUMENTS;**61,64**;Sep 27, 1994
|
---|
| 3 | ;
|
---|
| 4 | ;
|
---|
| 5 | NTE ; Build NTE segment
|
---|
| 6 | ;
|
---|
| 7 | N LA7NTE,LA7SOC,LA7TXT,LA7X,X
|
---|
| 8 | ;
|
---|
| 9 | ; Initialize segment set id
|
---|
| 10 | S LA7NTESN=0
|
---|
| 11 | ; Source of comment - handle other system's special codes, i.e. DOD-CHCS
|
---|
| 12 | S LA7SOC=$S($G(LA7NVAF)=1:"AC",1:"L")
|
---|
| 13 | ;
|
---|
| 14 | ; Send "MI" specimen's comments
|
---|
| 15 | I LA("SUB")="MI" D
|
---|
| 16 | . K LA7NTE
|
---|
| 17 | . S LA7TXT=$G(^LR(LA("LRDFN"),LA("SUB"),LA("LRIDT"),99))
|
---|
| 18 | . S LA7TXT=$$TRIM^XLFSTR(LA7TXT,"R"," ")
|
---|
| 19 | . I LA7TXT="" Q
|
---|
| 20 | . D NTE^LA7VORU1
|
---|
| 21 | ;
|
---|
| 22 | ; Send "CH" specimen's comments
|
---|
| 23 | I LA("SUB")="CH" D
|
---|
| 24 | . S LA7X=0
|
---|
| 25 | . F S LA7X=$O(^LR(LA("LRDFN"),LA("SUB"),LA("LRIDT"),1,LA7X)) Q:'LA7X D
|
---|
| 26 | . . K LA7NTE
|
---|
| 27 | . . S LA7TXT=$G(^LR(LA("LRDFN"),LA("SUB"),LA("LRIDT"),1,LA7X,0))
|
---|
| 28 | . . D BNTE
|
---|
| 29 | Q
|
---|
| 30 | ;
|
---|
| 31 | ;
|
---|
| 32 | PLC ; Performing lab comment
|
---|
| 33 | N LA74,LA7DIV,LA7NTE,LA7RNLT,LA7SOC,LA7TSTN,LA7TXT,LA7X,X
|
---|
| 34 | S (LA74,LA7DIV,LA7RNLT,LA7TSTN)=""
|
---|
| 35 | ;
|
---|
| 36 | ; Source of comment - handle other system's special codes, i.e. DOD-CHCS
|
---|
| 37 | S LA7SOC=$S($G(LA7NVAF)=1:"DS",1:"L")
|
---|
| 38 | ;
|
---|
| 39 | ; Find reporting facility (division).
|
---|
| 40 | I LA("SUB")="CH" D
|
---|
| 41 | . S LA7X=$G(^LR(LA("LRDFN"),LA("SUB"),LA("LRIDT"),$P(LA7VT,"^")))
|
---|
| 42 | . S LA74=$P(LA7X,"^",9)
|
---|
| 43 | . S LA7RNLT=$P($P(LA7X,"^",3),"!",2)
|
---|
| 44 | I LA74="" S LA74=+$P($G(^XMB(1,1,"XUS")),"^",17)
|
---|
| 45 | I LA74 S LA7DIV=$$NAME^XUAF4(LA74)
|
---|
| 46 | ;
|
---|
| 47 | ; Build result test name
|
---|
| 48 | I LA7RNLT="" D
|
---|
| 49 | . I $G(LA("NLT"))'="" S LA7RNLT=LA("NLT") Q
|
---|
| 50 | . S LA7RNLT=$G(LA7NLT)
|
---|
| 51 | I LA7RNLT D
|
---|
| 52 | . S LA7X=$O(^LAM("E",LA7RNLT,0))
|
---|
| 53 | . I LA7X S LA7TSTN=$$GET1^DIQ(64,LA7X_",",.01,"I")
|
---|
| 54 | ;
|
---|
| 55 | S LA7TXT=LA7TSTN_" results from "_LA7DIV_"."
|
---|
| 56 | D NTE^LA7VORU1
|
---|
| 57 | S X=$$PADD^XUAF4(LA74)
|
---|
| 58 | S LA7TXT=$P(X,U)_" "_$P(X,U,2)_", "_$P(X,U,3)_" "_$P(X,U,4)
|
---|
| 59 | D NTE^LA7VORU1
|
---|
| 60 | Q
|
---|
| 61 | ;
|
---|
| 62 | ;
|
---|
| 63 | INTRP ; Send test interpretation
|
---|
| 64 | ; Send "CH" subscript file #60 site/specimen's interpretation field (#5.5)
|
---|
| 65 | ;
|
---|
| 66 | N LA760,LA761,LA7NTE,LA7SOC,LA7TXT,LA7X,LA7Y,LRSB
|
---|
| 67 | ;
|
---|
| 68 | S LRSB=$P(LA7VT,"^"),LA7Y=0
|
---|
| 69 | S LA761=+$P(LA763(0),"^",5)
|
---|
| 70 | S LA7X=^LR(LA("LRDFN"),LA("SUB"),LA("LRIDT"),LRSB)
|
---|
| 71 | S LA760=+$P($P(LA7X,"^",3),"!",5)
|
---|
| 72 | I LA760,$D(^LAB(60,LA760,1,LA761,1)) S LA7Y=1
|
---|
| 73 | I 'LA760 D
|
---|
| 74 | . S LA760=0
|
---|
| 75 | . F S LA760=$O(^LAB(60,"C","CH;"_LRSB_";1",LA760)) Q:'LA760 D Q:LA7Y
|
---|
| 76 | . . I $D(^LAB(60,LA760,1,LA761,1)) S LA7Y=1
|
---|
| 77 | ;
|
---|
| 78 | I 'LA7Y Q
|
---|
| 79 | ;
|
---|
| 80 | ; Source of comment - handle other system's special codes, i.e. DOD-CHCS
|
---|
| 81 | S LA7SOC=$S($G(LA7NVAF)=1:"RI",1:"L")
|
---|
| 82 | ;
|
---|
| 83 | ; Build each line of interpretation as a NTE segment.
|
---|
| 84 | S LA7X=0
|
---|
| 85 | F S LA7X=$O(^LAB(60,LA760,1,LA761,1,LA7X)) Q:'LA7X D
|
---|
| 86 | . S LA7TXT=$G(^LAB(60,LA760,1,LA761,1,LA7X,0))
|
---|
| 87 | . D BNTE
|
---|
| 88 | ;
|
---|
| 89 | Q
|
---|
| 90 | ;
|
---|
| 91 | ;
|
---|
| 92 | BNTE ; Build NTE segment
|
---|
| 93 | ;
|
---|
| 94 | I $E(LA7TXT,1)="~" S LA7TXT=$$TRIM^XLFSTR(LA7TXT,"L","~")
|
---|
| 95 | S LA7TXT=$$TRIM^XLFSTR(LA7TXT,"R"," ")
|
---|
| 96 | I LA7TXT="" S LA7TXT=" "
|
---|
| 97 | D NTE^LA7VORU1
|
---|
| 98 | Q
|
---|