| 1 | LRORD1 ;DALOI/CJS/JAH - LAZY ACCESSION LOGGING ;8/10/04
 | 
|---|
| 2 |  ;;5.2;LAB SERVICE;**1,8,121,153,201,286,291**;Sep 27, 1994
 | 
|---|
| 3 | L2 Q:$G(LREND)
 | 
|---|
| 4 |  N LRBEQT,LRBEVT,LRBETS,LRBEX,LRBEY,LRBEZ,LRBETYP    ; CIDC
 | 
|---|
| 5 |  K LROT,LRSAME,LRKIL,LRGCOM,LRCCOM,LR696IEN,LRNATURE
 | 
|---|
| 6 |  S LRWPC=LRWP G:$D(LROR) LRFIRST
 | 
|---|
| 7 |  I '$D(LRADDTST) K DFN,DIC S PNM="",DIC(0)="EMQ"_$S($P(LRPARAM,U,6)&$D(LRLABKY):"L",1:"") W ! D ^LRDPA I (LRDFN=-1)!$D(DUOUT)!$D(DTOUT) Q
 | 
|---|
| 8 |  I $D(LRADDTST),LRADDTST="" Q
 | 
|---|
| 9 |  S:'$D(LREND) LREND=0 I LRORDR="" D COLTY^LRWU G DROP:LREND
 | 
|---|
| 10 |  S LRDPF=$P(^LR(LRDFN,0),U,2),DFN=$P(^(0),U,3)
 | 
|---|
| 11 | Q12 D LOC^LRWU G DROP:LREND
 | 
|---|
| 12 | Q11 D PRAC^LRWU1 G DROP:LREND
 | 
|---|
| 13 |  K T,TT,LRDMAX,LRDTST,LRTMAX
 | 
|---|
| 14 |  S DA=0
 | 
|---|
| 15 |  F  S DA=$O(^LRO(69,LRODT,1,"AA",LRDFN,DA)) Q:DA<1  I $S($D(^LRO(69,LRODT,1,DA,1)):$P(^(1),U,4)'="U",1:1) S S=$S($D(^LRO(69,LRODT,1,DA,4,1,0)):+^(0),1:0) D
 | 
|---|
| 16 |  . S I=0 F  S I=$O(^LRO(69,LRODT,1,DA,2,I)) Q:I<1  I $D(^(I,0)) S T(+^(0),DA)=S,X=+^(0) S:'$D(TT(X,S)) TT(X,S)=0 S TT(X,S)=TT(X,S)+1
 | 
|---|
| 17 |  K DIC
 | 
|---|
| 18 |  I $D(LRADDTST) S LRORD=+LRADDTST,LRADDTST="" G LRFIRST
 | 
|---|
| 19 |  D ORDER^LROW2
 | 
|---|
| 20 |  I $D(LRFLOG),$P(LRFLOG,U,3)="MI",$G(LRORDRR)'="R" K DUOUT D MICRO G L2:$D(DUOUT)!$D(DTOUT)
 | 
|---|
| 21 |  ;
 | 
|---|
| 22 | LRFIRST S LRSX=1 G Q13:'LRFIRST!(LRWP<2)
 | 
|---|
| 23 |  W !,"Choose one (or more, separated by commas)  ('*' AFTER NUMBER TO CHANGE URGENCY) "
 | 
|---|
| 24 |  F I=1:1:LRWPD D
 | 
|---|
| 25 |  . N X
 | 
|---|
| 26 |  . S X=^TMP("LRSTIK",$J,"B",I)
 | 
|---|
| 27 |  . W !,X,?4,$P(^TMP("LRSTIK",$J,X),U,2)
 | 
|---|
| 28 |  . S X=$G(^TMP("LRSTIK",$J,"B",I+LRWPD))
 | 
|---|
| 29 |  . I X W ?39," ",X,?44,$P(^TMP("LRSTIK",$J,X),U,2)
 | 
|---|
| 30 | Q13 S LREDO=0
 | 
|---|
| 31 | LEDI ;
 | 
|---|
| 32 |  ;
 | 
|---|
| 33 |  ; If LEDI accessioning then check for pending orders in file #69.6
 | 
|---|
| 34 |  I $G(LRRSTAT)="I",$G(LRRSITE("SMID"))'="",$G(LRSD("RUID"))'="" D  I $O(LROT(0)) G BAR
 | 
|---|
| 35 |  . D EN^LRORDB(LRSD("RUID"),LRRSITE("SMID"))
 | 
|---|
| 36 |  G:LRWP'>1 Q13A
 | 
|---|
| 37 |  W ! W:'LRFIRST "'?' for list,  " S LRFIRST=0
 | 
|---|
| 38 |  R "TEST number(s): ",LRSX:DTIME S:LRSX["?" LRFIRST=1 G LRFIRST:LRFIRST
 | 
|---|
| 39 |  I LRSX=""!(LRSX["^") G BAR
 | 
|---|
| 40 |  F I=1:1:$L(LRSX,",") D  Q:LREDO
 | 
|---|
| 41 |  . S LRSSX=$P(LRSX,",",I)
 | 
|---|
| 42 |  . I LRSSX'?1.3N.1"*" S LREDO=1 Q
 | 
|---|
| 43 |  . S LRSSX=$P(LRSSX,"*")
 | 
|---|
| 44 |  . I '$D(^TMP("LRSTIK",$J,LRSSX)) S LREDO=1
 | 
|---|
| 45 | Q13A I LREDO W !,"Something was mistyped, try again." G Q13
 | 
|---|
| 46 |  F LRK=1:1 S LRSSX=$P(LRSX,",",LRK) Q:LRSSX=""  D
 | 
|---|
| 47 |  . N X
 | 
|---|
| 48 |  . S LRST=$S(LRSSX["*":1,1:0),LRSSX=+LRSSX
 | 
|---|
| 49 |  . S X=^TMP("LRSTIK",$J,LRSSX)
 | 
|---|
| 50 |  . S LRSAMP=$P(X,U,3),LRSPEC=$P(X,U,5),LRTSTS=+X
 | 
|---|
| 51 |  . D Q20^LRORDD
 | 
|---|
| 52 | BAR S LRM=LRWPC+1,K=0 W !,"Other tests? N//" D % G Q14:'(%["Y")
 | 
|---|
| 53 | LRM D MORE^LRORD2
 | 
|---|
| 54 | Q14 D:$P(LRPARAM,U,17) ^LRORDD D ^LRORD2A D ENSTIK^LROW3 G LRM:'$D(%)&($D(LROT)'=11),DROP:$O(LROT(-1))="",LRM:'$D(%),DROP:%[U K DIC G DROP:'$D(LROT)!(%["N")
 | 
|---|
| 55 |  S LRBEY=1 I +LRDPF=2&($G(LRSS)'="BB")&('$$CHKINP^LRBEBA4(LRDFN,LRODT)) D  G DROP:'LRBEY
 | 
|---|
| 56 |  .D BALROR^LRBEBA3(.LRORD)  ; CIDC
 | 
|---|
| 57 |  I ($D(LRBEY)<1)!$D(DUOUT)!$D(DTOUT) Q
 | 
|---|
| 58 |  W !!,"LAB Order number: ",LRORD,!!
 | 
|---|
| 59 |  I LRECT D  G DROP:LRCDT<1
 | 
|---|
| 60 |  . I $G(LRORDRR)="R",$G(LRSD("CDT")) D  Q
 | 
|---|
| 61 |  . . S LRCDT=LRSD("CDT")_"^"
 | 
|---|
| 62 |  . . S LRORDTIM=$P(LRSD("CDT"),".",2)
 | 
|---|
| 63 |  . . I 'LRORDTIM S $P(LRCDT,"^",2)=1
 | 
|---|
| 64 |  . D TIME^LROE
 | 
|---|
| 65 |  . I $G(LRCDT)<1 Q
 | 
|---|
| 66 |  . S LRORDTIM=$P($P(LRCDT,U),".",2)
 | 
|---|
| 67 |  D NOW^%DTC S LRNT=% S:'LRECT LRCDT=LRNT_"^1"
 | 
|---|
| 68 |  S LRIDT=9999999-LRCDT
 | 
|---|
| 69 |  D ^LRORDST Q:$D(LROR)
 | 
|---|
| 70 |  I $D(LRFASTS) D LRWU4^LRFASTS
 | 
|---|
| 71 |  Q:$G(LRKIK)  G L2
 | 
|---|
| 72 | % R %:DTIME Q:%=""!(%["N")!(%["Y")  W !,"Answer 'Y' or 'N': " G %
 | 
|---|
| 73 |  ;
 | 
|---|
| 74 | Q20A ;from LRORD2
 | 
|---|
| 75 | MAX ; CHECK FOR MAXIUM ORDER FREQUENCY
 | 
|---|
| 76 |  I $D(TT(LRTSTS,LRSPEC)),$D(^LAB(60,LRTSTS,3,"B",LRCS(LRCSN))) D EN2^LRORDD I %'["Y" Q
 | 
|---|
| 77 |  S I7=0 F I9=0:0 S I9=$O(T(LRTSTS,I9)) Q:I9=""  I $D(^LAB(60,LRTSTS,3,+$O(^LAB(60,LRTSTS,3,"B",LRSAMP,0)),0)),+$P(^(0),U,5),LRSPEC=T(LRTSTS,I9) S I7=1
 | 
|---|
| 78 |  I I7 W $C(7),!!,"You have a duplicate: " S LRSN=0 F  S LRSN=$O(T(LRTSTS,LRSN)) Q:LRSN<1  W "  for ",$P(^LAB(60,LRTSTS,0),U) S LRZT=LRTSTS D ORDER^LROS S LRTSTS=LRZT
 | 
|---|
| 79 |  I I7 W !,"You already have that test, do you really want another? N//" D %
 | 
|---|
| 80 |  Q
 | 
|---|
| 81 |  ;
 | 
|---|
| 82 | URGG W !,"For ",$P(^TMP("LRSTIK",$J,LRSSX),U,2)
 | 
|---|
| 83 |  D URG^LRORD2
 | 
|---|
| 84 |  Q
 | 
|---|
| 85 |  ;
 | 
|---|
| 86 |  ;
 | 
|---|
| 87 | DROP W !!,"ORDER CANCELED",$C(7),!! Q:$D(LROR)  G L2 ; !($G(LREND))  G L2
 | 
|---|
| 88 |  ;
 | 
|---|
| 89 |  ;
 | 
|---|
| 90 | MICRO W !,"Is there one sample for this patient's order"
 | 
|---|
| 91 |  S %=1 D YN^DICN
 | 
|---|
| 92 |  I %=2!(%=-1) S:%=-1 DUOUT=1 Q
 | 
|---|
| 93 |  I %=0 W !,"The collection sample and site/specimen will be used for all tests ordered",!,"at this time for this patient." G MICRO
 | 
|---|
| 94 |  D GSNO^LRORD3 Q:$D(DUOUT)!$D(DTOUT)
 | 
|---|
| 95 |  I +LRSAMP=-1&(LRSPEC=-1) W !,"Incompletely defined." G MICRO
 | 
|---|
| 96 |  S LRSAME=LRSAMP_U_LRSPEC
 | 
|---|
| 97 |  S LRECOM=0 D GCOM^LRORD2
 | 
|---|
| 98 |  Q
 | 
|---|
| 99 |  ;
 | 
|---|
| 100 |  ;
 | 
|---|
| 101 | PRAC ;from LRFAST
 | 
|---|
| 102 |  S X=$S(+DIC("B"):$P(^VA(200,+DIC("B"),0),U),1:"")
 | 
|---|
| 103 |  W !,"PRACTITIONER: ",X,$S($L(X):"//",1:"")
 | 
|---|
| 104 |  R X:DTIME
 | 
|---|
| 105 |  I DIC("B"),X="" S Y=DIC("B") Q
 | 
|---|
| 106 |  D ^DIC K DIC
 | 
|---|
| 107 |  Q
 | 
|---|