[613] | 1 | LRSORA3 ;SLC/KCM - SEARCH LAB DATA AND PRINT REPORT ;8/28/89 12:07 ;
|
---|
| 2 | ;;5.2;LAB SERVICE;**1,344**;Sep 27, 1994
|
---|
| 3 | BUILD ;
|
---|
| 4 | S LRLOG="I "
|
---|
| 5 | F %=1:1:$L(LRTST(0)) D
|
---|
| 6 | . S LRLOG=LRLOG_$S($E(LRTST(0),%)?1A:"T("_($A(LRTST(0),%)-64)_")",1:$E(LRTST(0),%))
|
---|
| 7 | S LRDFN=0,LRLDFN=0,LREND=0
|
---|
| 8 | D SHORT:'LRLONG,LONG:LRLONG
|
---|
| 9 | Q
|
---|
| 10 | SHORT ;
|
---|
| 11 | S LRVDT=$P(LREDT,".",1)-.01
|
---|
| 12 | F S LRVDT=$O(^LRO(69,LRVDT)) Q:LRVDT=""!(LRVDT>LRSDT) D
|
---|
| 13 | . S LRLLOC=""
|
---|
| 14 | . F S LRLLOC=$O(^LRO(69,LRVDT,1,"AN",LRLLOC)) Q:LRLLOC="" D
|
---|
| 15 | .. S LRDFN=0
|
---|
| 16 | .. F S LRDFN=$O(^LRO(69,LRVDT,1,"AN",LRLLOC,LRDFN)) Q:LRDFN<1 D GIDT
|
---|
| 17 | Q
|
---|
| 18 | GIDT ;
|
---|
| 19 | S LRIDT=0
|
---|
| 20 | F S LRIDT=$O(^LRO(69,LRVDT,1,"AN",LRLLOC,LRDFN,LRIDT)) Q:LRIDT<1 D EVTW
|
---|
| 21 | Q
|
---|
| 22 | LONG ;
|
---|
| 23 | S LRSDT=9999998-LRSDT,LREDT=9999999-LREDT
|
---|
| 24 | S LRDFN=0 F S LRDFN=$O(^LR(LRDFN)) Q:LRDFN<1 D GDATA
|
---|
| 25 | Q
|
---|
| 26 | GDATA ;
|
---|
| 27 | S LRIDT=LRSDT
|
---|
| 28 | F S LRIDT=$O(^LR(LRDFN,"CH",LRIDT)) Q:LRIDT=""!(LRIDT>LREDT) D
|
---|
| 29 | . D:$L($P(^LR(LRDFN,"CH",LRIDT,0),U,3)) EVTW
|
---|
| 30 | Q
|
---|
| 31 | EVTW ;
|
---|
| 32 | S %=$G(^LR(LRDFN,"CH",LRIDT,0)) Q:'$L(%)
|
---|
| 33 | I LRAA S LRAAA=$P($P(%,U,6)," ") Q:'$D(LRAA(LRAAA))#2
|
---|
| 34 | K V F J=1:1:LRTST S T(J)=0
|
---|
| 35 | D EVAL Q:$G(LRNOP) X LRLOG
|
---|
| 36 | I $T S LRIDT1=0 F S LRIDT1=$O(V(LRIDT1)) Q:LRIDT1<1 D
|
---|
| 37 | . S LRSUB=0 F S LRSUB=$O(V(LRIDT1,LRSUB)) Q:LRSUB<1 D SET
|
---|
| 38 | Q
|
---|
| 39 | EVAL ;
|
---|
| 40 | F J=1:1:LRTST X LRTST(J,1) D
|
---|
| 41 | . I $T S T(J)=1
|
---|
| 42 | . I S X=$P(LRTST(J,3),U,1)
|
---|
| 43 | . I S $P(V(LRIDT,X),U,1)=$P(^LR(LRDFN,"CH",LRIDT,X),U,1)
|
---|
| 44 | . I S $P(V(LRIDT,X),U,2)=$P(^LR(LRDFN,"CH",LRIDT,X),U,2)
|
---|
| 45 | . I S $P(V(LRIDT,X),U,3)=$P(LRTST(J,2),U,1)
|
---|
| 46 | Q
|
---|
| 47 | SET ;
|
---|
| 48 | K LRWRD
|
---|
| 49 | S LRDPF=$P(^LR(LRDFN,0),U,2),DFN=$P(^(0),U,3) Q:LRDPF<1!(LRDPF=62.3) D PT^LRX
|
---|
| 50 | I LRPTS Q:'$D(LRPTS(DFN))
|
---|
| 51 | S %=^LR(LRDFN,"CH",LRIDT1,0),LRAN=$P(^(0),U,6),LRLOC=$P(^(0),U,11)
|
---|
| 52 | Q:LRLOC="" I LRLCS Q:'$D(LRLCS(LRLOC))
|
---|
| 53 | ;S LRWRD="" S:LRDPF=2 LRWRD=$S($D(^DPT(DFN,.1)):^(.1),1:"")
|
---|
| 54 | S LRWRD=$G(^DPT(DFN,.1))
|
---|
| 55 | S (Y1,LRDAT)=$P(^LR(LRDFN,"CH",LRIDT1,0),U,1),Y2=1
|
---|
| 56 | S LRCDT=$$DDDATE^LRAFUNC1(Y1,Y2) K Y1,Y2
|
---|
| 57 | S LRSUB1=$S(LRSRT="P":PNM_SSN,1:LRLOC)
|
---|
| 58 | S LRSUB2=$S(LRSRT="P":LRDAT,1:PNM_SSN)
|
---|
| 59 | S LRSUB3=$S(LRSRT="P":LRLOC,1:LRDAT)
|
---|
| 60 | S LRSPEC=$P(^LR(LRDFN,"CH",LRIDT1,0),U,5) D RRNG
|
---|
| 61 | S LRSPEC=$P($G(^LAB(61,LRSPEC,0)),U)
|
---|
| 62 | S LRTEST=LRTSTX
|
---|
| 63 | S LRVAL=$P(V(LRIDT1,LRSUB),U)
|
---|
| 64 | S LRMRK=$P(V(LRIDT1,LRSUB),U,2)
|
---|
| 65 | I LRSRT="P" S ^TMP("LR",$J,LRSUB1,LRSPEC,LRTEST,LRIDT)=PNM_U_SSN_U_LRLOC_U_U_LRSPEC_U_U_LRLO_U_LRHI_U_LRVAL_U_LRMRK_U_LRTHER_U_LRWRD_U_LRAN_U_LRDAT_U_LRTEST_U_LRUNITS
|
---|
| 66 | I LRSRT'="P" S ^TMP("LR",$J,LRLOC,LRSUB2,LRSPEC,LRTEST,LRIDT)=PNM_U_SSN_U_LRLOC_U_U_LRSPEC_U_U_LRLO_U_LRHI_U_LRVAL_U_LRMRK_U_LRTHER_U_LRWRD_U_LRAN_U_LRDAT_U_LRTEST_U_LRUNITS
|
---|
| 67 | S C=0
|
---|
| 68 | F S C=$O(^LR(LRDFN,"CH",LRIDT,1,C)) Q:'C D
|
---|
| 69 | . I LRSRT="P" S ^TMP("LR",$J,LRSUB1,LRSPEC,LRTEST,LRIDT,"COM",C)=^LR(LRDFN,"CH",LRIDT,1,C,0)
|
---|
| 70 | . I LRSRT'="P" S ^TMP("LR",$J,LRLOC,LRSUB2,LRSPEC,LRTEST,LRIDT,"COM",C)=^LR(LRDFN,"CH",LRIDT,1,C,0)
|
---|
| 71 | Q
|
---|
| 72 | RRNG ;
|
---|
| 73 | N LRFLAG
|
---|
| 74 | S (LRHI,LRLO,LRTHER,LRFLAG)="",X="CH;"_LRSUB_";1",X=$O(^LAB(60,"C",X,0))
|
---|
| 75 | S LRTSTX=$P(^LAB(60,X,.1),U)
|
---|
| 76 | S LRUNITS=$P($G(^LAB(60,X,1,LRSPEC,0)),"^",7)
|
---|
| 77 | S:$L(X)&$L(LRSPEC) X=$S($D(^LAB(60,X,1,LRSPEC,0)):^(0),1:"") Q:X=""
|
---|
| 78 | ;
|
---|
| 79 | ; check for ranges in file 63
|
---|
| 80 | D CHK63
|
---|
| 81 | ;
|
---|
| 82 | S LRTHER=$P(X,U,11)'=""&($P(X,U,12)'="")
|
---|
| 83 | S LRLO=$S('LRTHER:$P(X,U,2),1:$P(X,U,11))
|
---|
| 84 | S LRHI=$S('LRTHER:$P(X,U,3),1:$P(X,U,12))
|
---|
| 85 | I 'LRFLAG D
|
---|
| 86 | . S @("LRLO="_$S($L(LRLO):LRLO,1:""""""))
|
---|
| 87 | . S @("LRHI="_$S($L(LRHI):LRHI,1:""""""))
|
---|
| 88 | Q
|
---|
| 89 | ;
|
---|
| 90 | CHK63 ;
|
---|
| 91 | N LR63DAT,PC5
|
---|
| 92 | S LR63DAT=$G(^LR(LRDFN,"CH",LRIDT,LRSUB))
|
---|
| 93 | I $G(^LR(LRDFN,"CH",LRIDT,"NPC"))>1,$P(LR63DAT,U,5,12)'="" S LRFLAG=1
|
---|
| 94 | I LRFLAG D
|
---|
| 95 | .S PC5=$P(LR63DAT,U,5)
|
---|
| 96 | .S PC5=$TR(PC5,"!","^")
|
---|
| 97 | .S X=PC5
|
---|
| 98 | Q
|
---|