110 lines
2.9 KiB
Mathematica
110 lines
2.9 KiB
Mathematica
LR7OSUM6 ;DALOI/dcm - Silent Patient cum cont. ;Mar 11, 2003
|
|
;;5.2;LAB SERVICE;**121,201,187,286,356**;Sep 27, 1994;Build 8
|
|
;
|
|
LRUDT(X) ;Get output date/time
|
|
N LRTIM,I
|
|
S LRTIM=$E(X,9,12) F I=0:0 Q:$L(LRTIM)=4 S LRTIM=LRTIM_0
|
|
S LRTIM=$S(LRTIM?4"0":" ",1:$E(LRTIM,1,2)_":"_$E(LRTIM,3,4)),LRUDT=$$FMTE^XLFDT($P(X,"."),"5Z")_" "_$J(LRTIM,5)_" "
|
|
Q LRUDT
|
|
;
|
|
;
|
|
HEAD ;from LR7OSUM3, LR7OSUM4, LR7OSUM5
|
|
D LRBOT,TOP
|
|
Q
|
|
;
|
|
;
|
|
LRBOT ;from LR7OSUM3
|
|
N L1 D LINE^LR7OSUM4
|
|
Y D LINE^LR7OSUM4
|
|
Q
|
|
;
|
|
;
|
|
TOP ;from LR7OSUM3
|
|
S LRAG=0
|
|
Q
|
|
;
|
|
;
|
|
KILL D HEAD Q
|
|
Q
|
|
;
|
|
;
|
|
LRMISC S LRFDT=0,LRPG=1 D TOP
|
|
;
|
|
MHI S LRMHN=$P(^TMP($J,LRDFN,LRMH),U,1),LRCNT=12 D WR
|
|
;
|
|
MDT S LRFDT=$O(^TMP($J,LRDFN,"MISC",LRFDT)) G:LRFDT<1 END
|
|
S LRUDT=$$LRUDT(9999999-LRFDT) D LRCNT S LRMIT=0
|
|
;
|
|
LRMIT S LRMIT=$O(^TMP($J,LRDFN,"MISC",LRFDT,LRMIT)) G:LRMIT="TX" TXT G:LRMIT="" MDT S X=^(LRMIT) G:LRMIT=.1 MSG
|
|
;
|
|
S LRVAL=$P(X,U,1),LRSPE=$P(X,U,2),LRTEST=$P(X,U,3),X1=$P(X,U,4)
|
|
;S LRLO="",LRHI=","LRUNT=""
|
|
S LRLO=$P(X,"^",6),LRHI=$P(X,"^",7),LRUNT=$P(X,"^",8)
|
|
S LRSPEM=$S($L(LRSPE):$P(^LAB(61,LRSPE,0),U,1),1:"")
|
|
G:'LRTEST COMM
|
|
S LRNAME=$P(^LAB(60,LRTEST,.1),U,1)
|
|
;S:$L(LRSPE)&($D(^LAB(60,LRTEST,1,LRSPE,0))) X=^(0),@("LRLO="_$S($L($P(X,U,2)):$P(X,U,2),1:"""""")),@("LRHI="_$S($L($P(X,U,3)):$P(X,U,3),1:"""""")),LRUNT=$P(X,U,7)
|
|
;
|
|
WR1 D LINE^LR7OSUM4
|
|
S LRREF=""
|
|
I LRLO'="",LRHI'="" S LRREF=LRLO_" to "_LRHI
|
|
I LRLO'="",LRHI="" S LRREF=$S(LRLO?.AP:LRLO,1:"low: "_LRLO)
|
|
I LRLO="",LRHI'="" S LRREF=$S(LRHI?.AP:LRHI,1:"high: "_LRHI)
|
|
S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,LRUDT)_$$S^LR7OS(19,CCNT,$E(LRSPEM,1,16))_$$S^LR7OS(37,CCNT,LRNAME_":")_$$S^LR7OS(50,CCNT,LRVAL_" "_X1_" "_LRUNT)_$$S^LR7OS(67,CCNT,LRREF)
|
|
S:'$P($G(^TMP("LRT",$J,LRNAME)),"^",2) $P(^(LRNAME),"^",2)=GCNT
|
|
K LRREF
|
|
G LRMIT
|
|
;
|
|
;
|
|
MSG D LINE^LR7OSUM4,LINE^LR7OSUM4
|
|
X X ;Need to see what is in X
|
|
G LRMIT
|
|
;
|
|
;
|
|
COMM D LN
|
|
S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"COMMENT: "_LRVAL)
|
|
G LRMIT
|
|
;
|
|
;
|
|
WR ;
|
|
D LINE^LR7OSUM4
|
|
S X=GIOM/2-($L(LRMHN)/2+5)
|
|
S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(X,CCNT,"---- "_LRMHN_" ----"),^TMP("LRH",$J,LRMHN)=GCNT
|
|
D LINE^LR7OSUM4
|
|
D LN S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(4,CCNT,"DATE TIME SPECIMEN")_$$S^LR7OS(37,CCNT,"TEST")_$$S^LR7OS(50,CCNT,"VALUE")_$$S^LR7OS(64,CCNT,"Ref ranges")
|
|
D LN S X="",$P(X,"-",GIOM)="",^TMP("LRC",$J,GCNT,0)=X
|
|
Q
|
|
;
|
|
;
|
|
TXT S I=0
|
|
F S I=$O(^TMP($J,LRDFN,"MISC",LRFDT,"TX",I)) Q:I<1 S GCNT=GCNT+1,^TMP("LRC",$J,GCNT,0)=^(I,0)
|
|
G LRMIT
|
|
;
|
|
;
|
|
END S X="",$P(X,"=",GIOM)="",GCNT=GCNT+1,^TMP("LRC",$J,GCNT,0)=X
|
|
D LRBOT S LRLO=""
|
|
K LRSB,LRMISC
|
|
Q
|
|
;
|
|
;
|
|
PRE ;from LR7OSUM3
|
|
Q:$D(^TMP($J,LRDFN,"MISC"))'=11
|
|
S LRMISC=1,LRPG=0,LRMH="MISC"
|
|
G LRMISC
|
|
;
|
|
;
|
|
LRCNT ;
|
|
S LRCNT=0,I=0
|
|
F S I=$O(^TMP($J,LRDFN,LRMH,LRFDT,I)) Q:I<1 S LRCNT=LRCNT+1
|
|
S LRCTN=0
|
|
I $D(^TMP($J,LRDFN,LRMH,LRFDT,"TX")) D
|
|
. S J=0
|
|
. F S J=$O(^TMP($J,LRDFN,LRMH,LRFDT,"TX",J)) Q:J<1 S LRCTN=LRCTN+1
|
|
S LRCNT=LRCNT*2+5+LRCTN
|
|
Q
|
|
;
|
|
;
|
|
LN ;
|
|
S CCNT=1,GCNT=GCNT+1
|
|
Q
|