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

LRSORC1A.m

Go to the documentation of this file.
  1. LRSORC1A ;VA/DALISC/DRH - LRSORC Continued ;07-22-93
  1. ;;5.2;LAB SERVICE;**1031**;NOV 1, 1997
  1. ;
  1. ;;VA LR Patch(s): 201,344,351,384
  1. ;
  1. INIT ;
  1. S U="^"
  1. D CONTROL
  1. Q
  1. CONTROL ;
  1. D SORT
  1. Q
  1. SORT ;
  1. W:$E(IOST,1,2)="C-" @IOF
  1. W:$E(IOST,1,2)="P-" !
  1. D HDR
  1. D PRINT
  1. D:'LREND SUMMARY
  1. D END
  1. Q
  1. SUMMARY ;
  1. I ($Y>(IOSL-7)) D:$E(IOST,1,2)="C-" WAIT Q:LREND W @IOF D HDR
  1. F I=$Y:1:(IOSL-6) W !
  1. W ?20,"END OF SPECIAL REPORT"
  1. Q
  1. END ;
  1. D:($E(IOST,1,2)="C-")&('LREND) WAIT
  1. W @IOF D:'$D(ZTQUEUED) ^%ZISC
  1. K ^TMP("LR",$J)
  1. K ZTRTN,ZTIO,ZTDESC,ZTSAVE,ZTSK,ZTQUEUED,%ZIS,POP,%H,%DT,DTOUT,DUOUT
  1. K DIR,DIC,I,T,C,X,Y,L0,SEX,AGE,DFN,DOB,PNM,SSN,VA("BID"),VA("PID"),VAERR
  1. K LRAA,LRAD,LRDFN,LRDPF,LREND,LRFAN,LRIDT,LRLAN,LRLCS,LRSUB1,LRSUB2
  1. K LRLLOC,LRTX,LRTST,LRTVAL,LRCRTFLG,LRAN,LRSRT,LRPAG,LRDATE,LRDASH,LRDAT
  1. K LRLOC,LRPTS,LREDT,LRPDT,LRSDT,LRTREC,LRPREC,LREDAT,LRSDAT,LRSPDAT
  1. K LRWRD,LRHDR2,LRSUB3,LRAAA
  1. K HRCN ;IHS/ANMC/CLS 08/18/96
  1. Q
  1. PRINT ;
  1. S LRSUB1=""
  1. I $O(^TMP("LR",$J,LRSUB1))="" W !!?30,"NO MATCHING DATA FOUND",!! Q
  1. F S LRSUB1=$O(^TMP("LR",$J,LRSUB1)) Q:(LRSUB1="")!(LREND) D
  1. .S LRSUB2=""
  1. .F S LRSUB2=$O(^TMP("LR",$J,LRSUB1,LRSUB2)) Q:(LRSUB2="")!(LREND) D
  1. ..S LRSUB3=""
  1. ..F S LRSUB3=$O(^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3)) Q:(LRSUB3="")!(LREND) D
  1. ...S LRAN=""
  1. ...F S LRAN=$O(^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN)) Q:(LRAN="")!(LREND) D
  1. ....S LRPREC=^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN)
  1. ....S LRDPF=$P(LRPREC,U,4)
  1. ....; S PNM=$P(LRPREC,U),SSN=$P(LRPREC,U,2),LRLOC=$P(LRPREC,U,3)
  1. ....S PNM=$P(LRPREC,U),HRCN=$P(LRPREC,U,2),LRLOC=$P(LRPREC,U,3) ;IHS/ANMC/CLS 08/18/96
  1. ....S LRSPEC=$P(^LAB(61,$P(LRPREC,U,6),0),U)
  1. ....S LRSPNUM=$P(LRPREC,U,6)
  1. ....S LRSPDAT=$P(LRPREC,U,5)
  1. ....I ($Y>(IOSL-8)) D:$E(IOST,1,2)="C-" WAIT Q:LREND W @IOF D HDR
  1. ....;S PNM1=$P(PNM,","),PNM2=$P(PNM,",",2)
  1. ....;S LRCHNG=PNM1 D CHNCASE^LRSORA2 S PNM1=LRCHNG
  1. ....;S LRCHNG=PNM2 D CHNCASE^LRSORA2 S PNM2=LRCHNG
  1. ....;S PNM=PNM1_","_PNM2
  1. ....;S LRCHNG=LRSPEC D CHNCASE^LRSORA2 S LRSPEC=LRCHNG
  1. ....; W !,$E(PNM,1,22),?23,$E(SSN,1,11) W:LRDPF=2 ?35,$E(LRLOC,1,12),?48,$E(LRAN,1,14)
  1. ....W !,$E(PNM,1,23),?25,HRCN W:LRDPF=2 " ",LRLOC,?50,$E(LRAN,1,14) ;IHS/ANMC/CLS 08/18/96
  1. ....W ?63,LRSPDAT
  1. ....W !," ",LRSPEC
  1. ....D PRNTST
  1. Q
  1. PRNTST ;
  1. N LRRLO,LRRHI,LRCLO,LRCHI,LRTLO,LRTHI,LRFLAG,VAR
  1. S I=""
  1. F S I=$O(^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN,"TST",I)) Q:(I="")!(LREND) D
  1. .S LRTREC=^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN,"TST",I)
  1. .S LRTST=$P(LRTREC,U),LRTVAL=$P(LRTREC,U,2),LRCRTFLG=$P(LRTREC,U,3)
  1. .I ($Y>(IOSL-7)) D
  1. ..D CONT D:$E(IOST,1,2)="C-" WAIT Q:LREND
  1. ..W @IOF D HDR
  1. ..; W !,$E(PNM,1,22),?23,$E(SSN,1,11) W:LRDPF=2 ?35,$E(LRLOC,1,12),?48,$E(LRAN,1,14)
  1. ..W !,$E(PNM,1,23),?25,HRCN W:LRDPF=2 " ",LRLOC,?50,$E(LRAN,1,14) ;IHS/ANMC/CLS 08/18/96
  1. ..W ?63,LRSPDAT
  1. .Q:LREND
  1. .S LRTX=$P(LRTREC,U,5)
  1. .S LRFLAG=$P(LRTREC,U,6)
  1. .S LRREF=$G(^LAB(60,LRTX,1,LRSPNUM,0))
  1. .; set ranges LRFLAG on - from file 63 LRFLAG off - from file 60
  1. .S LRRLO=$S(LRFLAG:$P(LRTREC,U,7),1:$P(LRREF,U,2))
  1. .S LRRHI=$S(LRFLAG:$P(LRTREC,U,8),1:$P(LRREF,U,3))
  1. .S LRCLO=$S(LRFLAG:$P(LRTREC,U,9),1:$P(LRREF,U,4))
  1. .S LRCHI=$S(LRFLAG:$P(LRTREC,U,10),1:$P(LRREF,U,5))
  1. .S LRTLO=$S(LRFLAG:$P(LRTREC,U,11),1:$P(LRREF,U,11))
  1. .S LRTHI=$S(LRFLAG:$P(LRTREC,U,12),1:$P(LRREF,U,12))
  1. .F VAR="LRRLO","LRRHI","LRCLO","LRCHI" I @VAR="" S @VAR="none"
  1. .;
  1. .S LRTST=$P($G(^LAB(60,LRTX,.1)),U)
  1. .I LRTST="" S LRTST=$E($P(^LAB(60,LRTX,0),U),1,10)
  1. .;I 'LRTST S LRTST=$E($P(^LAB(60,LRTX,0),U),1,10)
  1. .;S LRCHNG=LRTST D CHNCASE^LRSORA2 S LRTST=LRCHNG
  1. .W !,?2,$E(LRTST,1,9),?12,$J(LRTVAL,6)
  1. .W ?19,$E($P(LRREF,U,7),1,10),?28,LRCRTFLG
  1. . I 'LRTLO,('LRTHI) D RANGE
  1. . I LRTLO W ?32,"Ther: ",LRTLO,"-"
  1. . I LRTHI W LRTHI D CRITICL
  1. I '$O(^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN,"COM",0)) W !
  1. E D COM
  1. Q
  1. COM ;Print comments on specimen
  1. W !,"COMMENT(S): "
  1. S C=""
  1. F S C=$O(^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN,"COM",C)) Q:(C="")!(LREND) D
  1. .I ($Y>(IOSL-7)) D
  1. ..D CONT D:$E(IOST,1,2)="C-" WAIT Q:LREND
  1. ..W @IOF D HDR
  1. ..; W !,$E(PNM,1,22),?23,$E(SSN,1,11) W:LRDPF=2 ?35,$E(LRLOC,1,12),?48,$E(LRAN,1,14)
  1. ..W !,$E(PNM,1,23),?25,HRCN W:LRDPF=2 " ",LRLOC,?50,$E(LRAN,1,14) ;IHS/ANMC/CLS 08/18/96
  1. ..W ?63,LRSPDAT
  1. ..;W !,PNM,?35,SSN W:LRDPF=2 " ",LRLOC,?60,LRAN
  1. ..;D HDR
  1. ..W !,"COMMENT(S): "
  1. .Q:LREND
  1. .W ?12,^TMP("LR",$J,LRSUB1,LRSUB2,LRSUB3,LRAN,"COM",C),!
  1. Q
  1. HDR ;
  1. S LRPAG=LRPAG+1
  1. ; W "SPECIAL REPORT: SEARCHING FOR CRITICAL FLAGS "
  1. ; W LRDATE,?65,"Pg ",LRPAG,!,LRHDR2,!
  1. ;
  1. ; ----- BEGIN IHS/OIT/MKK LR*5.2*1025 MODIFICATION
  1. D LABHDR^BLRUTIL2 ; Institution Name & Address in Header
  1. NEW STR,PGLEN
  1. S STR=$$CJ^XLFSTR("SPECIAL REPORT: SEARCHING FOR CRITICAL FLAGS",IOM)
  1. S PGLEN=$L("Pg "_LRPAG)
  1. S $E(STR,IOM-(PGLEN+2))="Pg "_LRPAG
  1. S STR=$$TRIM^XLFSTR(STR,"R"," ") ; Trim trailing spaces
  1. ;
  1. W STR,!,$$CJ^XLFSTR(LRHDR2,IOM),!
  1. W $$CJ^XLFSTR("Print Date: "_$$HTE^XLFDT($H,"2DZ"),IOM),!
  1. ; ----- END IHS/OIT/MKK LR*5.2*1025 MODIFICATION
  1. ;
  1. D LRGLIN^LRX
  1. Q
  1. RANGE ;
  1. W ?31,"Ref. Range: ",LRRLO,"-",LRRHI
  1. D CRITICL
  1. Q
  1. CRITICL ;
  1. W ?57,"Critical: ",LRCLO,"-",LRCHI
  1. Q
  1. WAIT ;
  1. K DIR S DIR(0)="E" D ^DIR
  1. S:($D(DTOUT))!($D(DUOUT)) LREND=1
  1. Q
  1. CONT W !?10,"CONTINUED NEXT PAGE",! Q