| 1 | LRVR5 ;DALOI/CJS/DALOI/FHS - LAB ROUTINE DATA VERIFICATION ;4/20/89  18:02
 | 
|---|
| 2 |  ;;5.2;LAB SERVICE;**1,42,153,263,283,286**;Sep 27, 1994
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  S LRNX=0,LRVRM=11
 | 
|---|
| 5 | V40 ;
 | 
|---|
| 6 |  S LRNX=$O(LRORD(LRNX))
 | 
|---|
| 7 |  G V44:LRNX<1 D SUBS G V40:'LRTS,V40:'$D(LRVTS(LRSB))
 | 
|---|
| 8 |  ;
 | 
|---|
| 9 |  ; Only allow verifying reference lab results which exist in LAH, no
 | 
|---|
| 10 |  ; entering results "on the fly" - use EM options (^LRVER)
 | 
|---|
| 11 |  I $G(LRDUZ(2)),LRDUZ(2)'=DUZ(2),'$D(^LAH(LRLL,1,LRSQ,LRSB)) K LRSB(LRSB) G V40
 | 
|---|
| 12 |  ;
 | 
|---|
| 13 |  I $D(^LR(LRDFN,LRSS,LRIDT,LRSB)),^(LRSB)'["pending" D V25^LRVR4 G:LRVF V40
 | 
|---|
| 14 | V42 D V25
 | 
|---|
| 15 |  S X=$S($D(LRSB(LRSB)):$P(LRSB(LRSB),U),1:""),LREDIT=0
 | 
|---|
| 16 |  I X="",LRDV'="" S $P(LRSB(LRSB),"^")=LRDV,X=LRDV
 | 
|---|
| 17 |  S LRTEST=$P(^LAB(60,+LRTS,0),U),LROUT=0 K LRNOVER(LRSB)
 | 
|---|
| 18 | Q42 W !,LRTEST," " W:X'="" @LRFP R "//",X:DTIME I X'?.ANP W $C(7)," No Control Characters Allowed." G V42
 | 
|---|
| 19 |  I X=""&$D(LRSB(LRSB)) S X=$P(LRSB(LRSB),U)
 | 
|---|
| 20 | Q43 S LRDL=X G V40:X="",V45:X'["^",V44:X="^",OUT:X="^^"
 | 
|---|
| 21 | V43 S X=$P(X,U,2),DIC="^LAB(60,",DIC(0)="EOQZ" D ^DIC G:Y<1 Q42
 | 
|---|
| 22 |  S LRPLOC=$P(Y(0),U,5),LRSSQ=$P(LRPLOC,";",1),LRSB=$P(LRPLOC,";",2),LRTS=+Y
 | 
|---|
| 23 |  I LRSSQ="" W !,"Not in this group" G OUT
 | 
|---|
| 24 |  I LRSS'=LRSSQ!'$D(^TMP("LR",$J,"TMP",LRSB)) W !,"Not in this group" G OUT
 | 
|---|
| 25 |  F LRNX=0:0 S LRNX=$O(LRORD(LRNX)) Q:LRNX<1  G V42:LRSB=LRORD(LRNX)
 | 
|---|
| 26 | V44 D COM^LRVR4
 | 
|---|
| 27 |  S LRNUF=1
 | 
|---|
| 28 |  Q
 | 
|---|
| 29 |  ;
 | 
|---|
| 30 |  ;
 | 
|---|
| 31 | V45 ;
 | 
|---|
| 32 |  K LRSKIP
 | 
|---|
| 33 |  S LRDL=X
 | 
|---|
| 34 |  I X="@" D  G V46
 | 
|---|
| 35 |  . S X=$S($D(LRM(LRSB)):"pending",1:"")
 | 
|---|
| 36 |  . S $P(LRSB(LRSB),"^")=X,$P(LRSB(LRSB),"^",2)=""
 | 
|---|
| 37 |  ;
 | 
|---|
| 38 |  S X7=U_$P(^LAB(60,+LRTS,0),U,12),X6=X7_"0)"
 | 
|---|
| 39 |  X:'(X="*"!($E(X)="?")!(X="C")!(X="#")!(X="canc")!(X="pending")) $P(@X6,U,5,99)
 | 
|---|
| 40 |  I '$D(X)#2 D HELP G V42
 | 
|---|
| 41 |  I $D(X)#2,X["?" D HELP G:'($P(@X6,U,2)["S") V42
 | 
|---|
| 42 |  I $D(X)#2,$P(@X6,U,2)["S",X'="*",X'="#",X'="canc",X'="pending" D SET G:'$D(X)#2 V42
 | 
|---|
| 43 |  I $D(X)#2,X="C",$P(@X6,U,2)'["S" D COMP^LRVER5 G V42
 | 
|---|
| 44 |  ;
 | 
|---|
| 45 | V46 G V44:'$D(X)#2
 | 
|---|
| 46 |  S X1=$S($D(^LR(LRDFN,LRSS,LRLDT,LRSB)):$P(^(LRSB),U),1:""),LRFLG=""
 | 
|---|
| 47 |  S:X="*" X="canc" S:X="#" X="comment"
 | 
|---|
| 48 |  K LRQ S Y=0
 | 
|---|
| 49 |  I LRDEL'="" S LRQ=1 X LRDEL K LRQ
 | 
|---|
| 50 |  D RANGE
 | 
|---|
| 51 |  G:$D(LRNUF) V44
 | 
|---|
| 52 |  K LRNUF
 | 
|---|
| 53 |  G V40:'$D(LRSKIP)
 | 
|---|
| 54 |  S X=LRSKIP
 | 
|---|
| 55 |  G Q43:X["^",V40
 | 
|---|
| 56 |  G RANGE
 | 
|---|
| 57 |  ;
 | 
|---|
| 58 |  ;
 | 
|---|
| 59 | RANGE D RANGE^LRVER5
 | 
|---|
| 60 | RQ S X=Y
 | 
|---|
| 61 | NR ;
 | 
|---|
| 62 |  S:$P(X,U)="" LRSB(LRSB)="" Q:$D(LRQ)
 | 
|---|
| 63 |  I $P(X,U)'="" D
 | 
|---|
| 64 |  . N I,LRX,LRY
 | 
|---|
| 65 |  . S $P(LRSB(LRSB),U,1,2)=X_U_LRFLG
 | 
|---|
| 66 |  . S $P(LRSB(LRSB),U,4)=$G(DUZ)
 | 
|---|
| 67 |  . I $P(LRSB(LRSB),U,9)="" S $P(LRSB(LRSB),U,9)=$S($G(LRDUZ(2)):LRDUZ(2),$G(DUZ(2)):DUZ(2),1:"")
 | 
|---|
| 68 |  . S LRX=$$TMPSB^LRVER1(LRSB),LRY=$P(LRSB(LRSB),U,3)
 | 
|---|
| 69 |  . F I=1:1:$L(LRX,"!") I $P(LRY,"!",I)="" S $P(LRY,"!",I)=$P(LRX,"!",I)
 | 
|---|
| 70 |  . S $P(LRSB(LRSB),U,3)=LRY
 | 
|---|
| 71 |  . S LRX=LRNGS,LRY=$P(LRSB(LRSB),U,5)
 | 
|---|
| 72 |  . F I=1:1:$L(LRX,U) I $P(LRY,"!",I)="" S $P(LRY,"!",I)=$P(LRX,U,I)
 | 
|---|
| 73 |  . S $P(LRSB(LRSB),U,5)=LRY
 | 
|---|
| 74 |  Q
 | 
|---|
| 75 |  ;
 | 
|---|
| 76 |  ;
 | 
|---|
| 77 | SUBS ;
 | 
|---|
| 78 |  D LRSUBS^LRVER5
 | 
|---|
| 79 |  Q
 | 
|---|
| 80 |  ;
 | 
|---|
| 81 |  ;
 | 
|---|
| 82 | SET ;
 | 
|---|
| 83 |  D LRSET^LRVER5
 | 
|---|
| 84 |  Q
 | 
|---|
| 85 |  ;
 | 
|---|
| 86 |  ;
 | 
|---|
| 87 | HUH W !,"CHOOSE:" F I=1:1 S LRSUBS=$P(LRSET,";",I) Q:LRSUBS=""  W !,$P(LRSUBS,":")," FOR ",$P(LRSUBS,":",2)
 | 
|---|
| 88 |  K X
 | 
|---|
| 89 |  Q
 | 
|---|
| 90 |  ;
 | 
|---|
| 91 |  ;
 | 
|---|
| 92 | V25 ; From LRVR4
 | 
|---|
| 93 |  D V25^LRVER5
 | 
|---|
| 94 |  Q
 | 
|---|
| 95 |  ;
 | 
|---|
| 96 |  ;
 | 
|---|
| 97 | OUT S LROUT=1
 | 
|---|
| 98 |  Q
 | 
|---|
| 99 |  ;
 | 
|---|
| 100 |  ;
 | 
|---|
| 101 | HELP ;
 | 
|---|
| 102 |  W !," ??",$C(7)
 | 
|---|
| 103 |  S X5=X7_"3)"
 | 
|---|
| 104 |  W:$D(@X5) " ",@X5
 | 
|---|
| 105 |  W !,"Enter * to report ""canc"" for canceled."
 | 
|---|
| 106 |  W !,"Enter # to report ""comment""."
 | 
|---|
| 107 |  W:'($P(@X6,U,2)["S") !,"Enter C to enter calculate mode."
 | 
|---|
| 108 |  Q
 | 
|---|