Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: LAMIAUT3

LAMIAUT3.m

Go to the documentation of this file.
  1. LAMIAUT3 ;DALOI/JMC - MICRO DISPLAY ANTIBIOTICS FOR VERIFY ;06/04/12 16:23
  1. ;;5.2;AUTOMATED LAB INSTRUMENTS;**74**;Sep 27, 1994;Build 229
  1. ;
  1. ;
  1. BACT ; From LAMIAUT1, LAMIAUT4, LAMIAUT6, LAMIVTL4
  1. ;
  1. N A,B,LR1PASS,LR2ORMOR,LRAO,LRABCNT,LRACNT,LRBN,LRBUG,LRCOMTAB,LRINT,LRRES
  1. S LR2ORMOR=1,LREND=0 Q:+$O(^LR(LRDFN,"MI",LRIDT,3,0))<1
  1. D BUGHDR
  1. ;
  1. S LRBUG=0
  1. F A=1:1 S LRBUG=+$O(^LR(LRDFN,"MI",LRIDT,3,LRBUG)) Q:LRBUG<1 D
  1. . I +$O(^LR(LRDFN,"MI",LRIDT,3,LRBUG,2))'["2." S A=A-1 Q
  1. . D CHECK
  1. ;
  1. S (LRABCNT,LRBN)=0
  1. F S LRBN=+$O(LRRES(LRBN)) Q:LRBN<1 S LRABCNT=LRABCNT+1
  1. I 'LRABCNT W !!?10,"There are NO antibiotics in the patient's file",!! Q
  1. Q:LREND
  1. ;
  1. S LRCOMTAB=$S(LRFMT="B":A*13+17,1:A*5+17)
  1. S (LRAO,LREND,LRACNT)=0
  1. F S LRAO=$O(^LAB(62.06,"AO",LRAO)) Q:LRAO<.001 D Q:LREND
  1. . S B=$O(^LAB(62.06,"AO",LRAO,0))
  1. . I B>0,$D(^LAB(62.06,B,0)) D Q:LREND
  1. . . D AB
  1. . . I $Y>(IOSL-3) D WAIT
  1. ;
  1. W !
  1. ;
  1. Q
  1. ;
  1. ;
  1. CHECK ;
  1. ;
  1. N LRBN,LR1PASS,LRFLAG,B,B1,B2,B3
  1. ;
  1. S LRFLAG=0
  1. F LRBN=2:0 S LRBN=+$O(^LR(LRDFN,"MI",LRIDT,3,LRBUG,LRBN)) Q:$E(LRBN,1,2)'="2." D
  1. . S B=^LR(LRDFN,"MI",LRIDT,3,LRBUG,LRBN),B1=$P(B,U),B2=$P(B,U,2),B3=$P(B,U,3)
  1. . I B1'="",$D(^LAB(62.06,"AI",LRBN,B1)) D FIRST
  1. ;
  1. S LRBN=2
  1. F S LRBN=+$O(LR1PASS(LRBN)) Q:LRBN<1 S B=LR1PASS(LRBN),B1=$P(B,U),B2=$P(B,U,2),B3=$P(B,U,3) D LAB
  1. ;
  1. Q
  1. ;
  1. ;
  1. FIRST ;
  1. S B2=$S(B2]"":B2,1:^LAB(62.06,"AI",LRBN,B1))
  1. S:$E(B2)'="R"&("A"[B3) LRFLAG=1
  1. S LR1PASS(LRBN)=B1_U_B2_U_B3,^LR(LRDFN,"MI",LRIDT,3,LRBUG,LRBN)=LR1PASS(LRBN)
  1. Q
  1. ;
  1. ;
  1. LAB ;
  1. I $D(LRLABKY),'$D(LRWRDVEW) D Q
  1. . N X
  1. . S X=$S(B3="N"!(B3="R"&LRFLAG):B1_"*",1:B1)
  1. . S $P(LRRES(LRBN),U,A)=X
  1. . S X=$S(B3="N"!(B3="R"&LRFLAG):B2_"*",1:B2)
  1. . S $P(LRINT(LRBN),U,A)=X
  1. ;
  1. I B3=""!(B3="A")!(B3="R"&'LRFLAG) S $P(LRRES(LRBN),U,A)=B1,$P(LRINT(LRBN),U,A)=B2
  1. ;
  1. Q
  1. ;
  1. ;
  1. AB ;
  1. ; Check if entry is for a bacterial drug, not an AFB drug.
  1. S J=$P(^LAB(62.06,B,0),U,2)
  1. I J="" Q
  1. I $D(LRINT(J)),LRINT(J)'?."^" W !,$E($P(^LAB(62.06,B,0),U),1,14) S LRDCOM=$P(^(0),U,3),LRACNT=LRACNT+1 D SIR
  1. Q
  1. ;
  1. ;
  1. BUGHDR ;
  1. N A,J,LRBUG,LRORG,LRORGCOM,LRX
  1. W @IOF
  1. W !?5,PNM," SSN: ",SSN,!,LRACCN," ",$P(^LAB(62,LRSAMP,0),U)," ",$P(^LAB(61,LRSPEC,0),U),!
  1. ;
  1. S LRBUG=0
  1. F A=0:1 S LRBUG=+$O(^LR(LRDFN,"MI",LRIDT,3,LRBUG)) Q:LRBUG<1 D
  1. . S LRX=$G(^LR(LRDFN,"MI",LRIDT,3,LRBUG,0))
  1. . I LRX="" Q
  1. . S LRORG=$P(LRX,U),LRORGCOM=$P(LRX,U,2),LRORG=$P(^LAB(61.2,LRORG,0),U)
  1. . S:+$O(^LR(LRDFN,"MI",LRIDT,3,LRBUG,2))'["2." A=A-1 I +$O(^(2))["2." D ORG
  1. I LRFMT="B" W ! F J=1:1:A W ?J-1*13+15,":"
  1. W !
  1. F J=1:1:A W:LRFMT'="B" ?(J*5+10),":" I LRFMT="B" W ?J-1*13+15,"SUSC INTP"
  1. Q
  1. ;
  1. ;
  1. ORG ;
  1. N J
  1. W !
  1. I A>0 F J=1:1:A W ?($S(LRFMT="B":J-1*13+15,1:J*5+10)),":"
  1. W ?($S(LRFMT="B":A*13+15,1:A*5+15)),$S(LR2ORMOR:LRBUG_". ",1:""),LRORG,$S(LRORGCOM'="":" ("_LRORGCOM_")",1:"")
  1. Q
  1. ;
  1. ;
  1. SIR ;
  1. ;
  1. N II
  1. F II=1:1:10 D:$P(LRINT(J),U,II,10)="" DCOM Q:$P(LRINT(J),U,II,10)="" D
  1. . I LRFMT'="B" W ?(II*5+10),$S(LRFMT="I":$P(LRINT(J),U,II),1:$P(LRRES(J),U,II)) Q
  1. . W ?(II-1*13+15),$S($D(LRRES(J)):$P(LRRES(J),U,II),1:""),?(II-1*13+21),$P(LRINT(J),U,II)," "
  1. Q
  1. ;
  1. ;
  1. DCOM ;
  1. ;
  1. N A,K
  1. W ?LRCOMTAB,LRDCOM
  1. I $D(LRDCOM(J)) D
  1. . S (A,K)=0
  1. . F S A=+$O(LRDCOM(J,A)) Q:A<1 W:'('K&(LRDCOM="")) ! W ?LRCOMTAB,LRDCOM(J,A) S K=1
  1. Q
  1. ;
  1. ;
  1. WAIT ; End of page/continue prompt
  1. N DIR,DIROUT,DIRUT,STOUT,X,Y
  1. ;
  1. S DIR(0)="E"
  1. D ^DIR
  1. I $D(DIRUT) S LREND=1 Q
  1. ;
  1. W @IOF D BUGHDR
  1. ;
  1. Q