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

LR7OSMZ4.m

Go to the documentation of this file.
  1. LR7OSMZ4 ;DALOI/STAFF - Silent Micro rpt - AFB, FUNGUS ;Jul 15, 2021@13:33
  1. ;;5.2;LAB SERVICE;**121,244,350,547**;Sep 27, 1994;Build 10
  1. ;
  1. ;
  1. TB ; from LR7OSMZ1
  1. ;
  1. N LRTA,LRX
  1. ;
  1. S LRX=^LR(LRDFN,"MI",LRIDT,11)
  1. I $P(LRX,U)="" D Q:'$D(LRWRDVEW) Q:LRSB'=11
  1. . Q:'$D(^XTMP("LRMICRO EDIT",LRDFN,LRIDT,11))
  1. . ;LR*5.2*547: Display informational message if accession/test is currently being edited
  1. . ; and results had previously been verified.
  1. . N LR7SB S LR7SB=11
  1. . D MES^LR7OSMZ2
  1. ;
  1. S LRTUS=$P(LRX,U,2),DZ=$P(LRX,U,5),LRAFS=$P(LRX,U,3),LRAMT=$P(LRX,U,4),Y=$P(LRX,U)
  1. D D^LRU,LINE^LR7OSUM4
  1. S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"* MYCOBACTERIOLOGY "_$S(LRTUS="F":"FINAL",LRTUS="P":"PRELIMINARY",1:"")_" REPORT => "_Y_" TECH CODE: "_DZ)
  1. S LRPRE=23
  1. D PRE^LR7OSMZU
  1. ;
  1. S LRTA=""
  1. I $O(^LR(LRDFN,"MI",LRIDT,12,0)) S LRTA=0
  1. D:LRAFS'=""!(LRTA=0) AFS
  1. ;
  1. I $O(^LR(LRDFN,"MI",LRIDT,13,0)) D
  1. . D LINE^LR7OSUM4,LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"Mycobacteriology Remark(s):")
  1. . S B=0
  1. . F S B=+$O(^LR(LRDFN,"MI",LRIDT,13,B)) Q:B<1 S X=^(B,0) D LINE^LR7OSUM4 S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,X)
  1. ;
  1. Q
  1. ;
  1. ;
  1. AFS ; Acid Fast Stain results
  1. ;
  1. N LRX,X
  1. ;
  1. I LRAFS'="" D
  1. . S LRX="Acid Fast Stain: "
  1. . I LRAFS?1(1"DP",1"DN",1"CP",1"CN") D
  1. . . S LRX=$S($E(LRAFS)="D":"Direct ",$E(LRAFS)="C":"Concentrate ",1:"")_LRX
  1. . . S LRX=LRX_$S($E(LRAFS,2)="P":"Positive",$E(LRAFS,2)="N":"Negative",1:LRAFS)
  1. . E D
  1. . . S X=$$GET1^DIQ(63.05,LRIDT_","_LRDFN_",",24)
  1. . . I X'="" S LRX=LRX_X Q
  1. . . S LRX=LRX_LRAFS
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,LRX)
  1. . I LRAMT'="" D
  1. . . D LINE^LR7OSUM4
  1. . . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,"Quantity: "_LRAMT)
  1. ;
  1. K ^TMP("LR",$J,"T"),LRTSTS
  1. ;
  1. I $D(LRTA) D
  1. . S LRTSTS=0
  1. . F A=0:1 S LRTA=+$O(^LR(LRDFN,"MI",LRIDT,12,LRTA)) Q:LRTA<1 S (LRBUG(LRTA),LRTBC)=$P(^(LRTA,0),U),LRQU=$P(^(0),U,2),LRTBC=$P(^LAB(61.2,LRTBC,0),U) D LIST
  1. Q
  1. ;
  1. ;
  1. LIST ;
  1. N CNT,LRTB,LRTBA,LRTBS
  1. D LINE^LR7OSUM4,LINE^LR7OSUM4
  1. S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"Mycobacterium: "_LRTBC)
  1. S:$D(^LR(LRDFN,"MI",LRIDT,12,LRTA,2)) LRTSTS=LRTSTS+1
  1. I LRQU'="" D LINE^LR7OSUM4 S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,"Quantity: "_LRQU)
  1. I $D(^LR(LRDFN,"MI",LRIDT,12,LRTA,1,0)) D
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT," Comment: ")
  1. . S (CNT,B)=0
  1. . F S B=+$O(^LR(LRDFN,"MI",LRIDT,12,LRTA,1,B)) Q:B<1 S X=^(B,0) D
  1. . . I 'CNT S CNT=1,^(0)=^TMP("LRC",$J,GCNT,0)_$$S^LR7OS(13,CCNT,X) Q
  1. . . D LINE^LR7OSUM4
  1. . . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(13,CCNT,X)
  1. . D LINE^LR7OSUM4
  1. ;
  1. SEN ;
  1. S LRTB=2
  1. F S LRTB=+$O(^LR(LRDFN,"MI",LRIDT,12,LRTA,LRTB)) Q:LRTB'["2."!(LRTB="") D
  1. . S LRTBS=^LR(LRDFN,"MI",LRIDT,12,LRTA,LRTB)
  1. . I LRTBS="" Q
  1. . S LRTBA=""
  1. . I $D(^LAB(62.06,"AD1",LRTB)) D
  1. . . S LRX=$O(^LAB(62.06,"AD1",LRTB,0)),LRX(0)=""
  1. . . I LRX S LRX(0)=$G(^LAB(62.06,LRX,0))
  1. . . S LRTBA=$P(LRX(0),"^")
  1. . I LRTBA="" D
  1. . . S LRTBA=$O(^DD(63.39,"GL",LRTB,1,0))
  1. . . S LRTBA=$P(^DD(63.39,LRTBA,0),U)
  1. . S LRTBA=$$LJ^XLFSTR(LRTBA,30,".")
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,LRTBA)_$$S^LR7OS(34,CCNT,LRTBS)
  1. ;
  1. Q
  1. ;
  1. ;
  1. FUNG ;from LR7OSMZ1
  1. S X=^LR(LRDFN,"MI",LRIDT,8)
  1. I '$L($P(X,U)) D Q:'$D(LRWRDVEW) Q:LRSB'=8
  1. . Q:'$D(^XTMP("LRMICRO EDIT",LRDFN,LRIDT,8))
  1. . ;LR*5.2*547: Display informational message if accession/test is currently being edited
  1. . ; and results had previously been verified.
  1. . N LR7SB S LR7SB=8
  1. . D MES^LR7OSMZ2
  1. S LRTUS=$P(X,U,2),DZ=$P(X,U,3),Y=$P(X,U)
  1. D D^LRU,LINE^LR7OSUM4
  1. S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"* MYCOLOGY "_$S(LRTUS="F":"FINAL",LRTUS="P":"PRELIMINARY",1:"")_" REPORT => "_Y_" TECH CODE: "_DZ)
  1. S LRPRE=22
  1. D PRE^LR7OSMZU
  1. I $D(^LR(LRDFN,"MI",LRIDT,15)) D
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"MYCOLOGY SMEAR/PREP:")
  1. . S LRMYC=0
  1. . F S LRMYC=+$O(^LR(LRDFN,"MI",LRIDT,15,LRMYC)) Q:LRMYC<1 S X=^(LRMYC,0) D LINE^LR7OSUM4 S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(5,CCNT,X)
  1. ;
  1. I $O(^LR(LRDFN,"MI",LRIDT,9,0)) D
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"Fungus/Yeast: ")
  1. . D SHOW
  1. ;
  1. I $O(^LR(LRDFN,"MI",LRIDT,10,0)) D
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,"Mycology Remark(s):")
  1. . S LRMYC=0
  1. . F S LRMYC=+$O(^LR(LRDFN,"MI",LRIDT,10,LRMYC)) Q:LRMYC<1 S X=^(LRMYC,0) D LINE^LR7OSUM4 S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,X)
  1. Q
  1. ;
  1. ;
  1. SHOW ;
  1. S LRTA=0
  1. F S LRTA=+$O(^LR(LRDFN,"MI",LRIDT,9,LRTA)) Q:LRTA<1 D
  1. . S (LRBUG(LRTA),LRTBC)=$P(^(LRTA,0),U),LRQU=$P(^(0),U,2),LRTBC=$P(^LAB(61.2,LRTBC,0),U)
  1. . D LIST1
  1. Q
  1. ;
  1. ;
  1. LIST1 ;
  1. N B,C
  1. D LINE^LR7OSUM4
  1. S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(1,CCNT,LRTBC)
  1. I LRQU'="" D
  1. . D LINE^LR7OSUM4
  1. . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,"Quantity: "_LRQU)
  1. ;
  1. I $D(^LR(LRDFN,"MI",LRIDT,9,LRTA,1,0)) D
  1. . D LINE^LR7OSUM4 S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(3,CCNT,"Comment:")
  1. . S (B,C)=0
  1. . F S B=+$O(^LR(LRDFN,"MI",LRIDT,9,LRTA,1,B)) Q:B<1 S X=^(B,0) D
  1. . . I 'C S C=1,^(0)=^TMP("LRC",$J,GCNT,0)_$$S^LR7OS(13,CCNT,X) Q
  1. . . D LINE^LR7OSUM4
  1. . . S ^TMP("LRC",$J,GCNT,0)=$$S^LR7OS(13,CCNT,X)
  1. Q