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

DGMTOPYT.m

Go to the documentation of this file.
  1. DGMTOPYT ;ALB/CAW - Means Test with Previous Year Threshold ;8/14/92
  1. ;;5.3;Registration;**33**;Aug 13, 1993
  1. ;
  1. EN ;
  1. I '$$RANGE^DGMTUTL("P") G ENQ
  1. W !! S %ZIS="PMQ" D ^%ZIS I POP G ENQ
  1. I '$D(IO("Q")) D MAIN G ENQ
  1. S Y=$$QUE
  1. ENQ ;
  1. D:'$D(ZTQUEUED) ^%ZISC
  1. K DFN,DGBEG,DGC,DGDATE,DGDFN,DGEND,DGIEN,DGLINE,DGPAGE,DGP,DGPAT,DGPT,DGSTOP,DGTST,VA,VAERR,^TMP("DGMTO",$J)
  1. Q
  1. ;
  1. QUE() ; -- que job
  1. ; return: did job que [ 1|yes 0|no ]
  1. ;
  1. K ZTSK,IO("Q")
  1. S ZTDESC="Previous Year Threshold Output",ZTRTN="MAIN^DGMTOPYT"
  1. F X="DGBEG","DGEND" S ZTSAVE(X)=""
  1. D ^%ZTLOAD W:$D(ZTSK) " (Task: ",ZTSK,")"
  1. Q $D(ZTSK)
  1. ;
  1. MAIN ;
  1. S DGDATE=DGBEG-.1,(DGIEN,DGSTOP,DGPAGE,DGPT)=0,$P(DGLINE,"-",IOM+1)=""
  1. D HDR
  1. F S DGDATE=$O(^DGMT(408.31,"AP",1,DGDATE)) Q:'DGDATE!(DGDATE>DGEND) F S DGIEN=$O(^DGMT(408.31,"AP",1,DGDATE,DGIEN)) Q:'DGIEN D Q:DGSTOP
  1. .Q:'$G(^DGMT(408.31,DGIEN,"PRIM"))
  1. .S DGDFN=$P(^DGMT(408.31,DGIEN,0),U,2),DGTST=$P(^DGMT(408.31,DGIEN,0),U)
  1. .S DFN=DGDFN D PID^VADPT
  1. .S ^TMP("DGMTO",$J,$P(^DPT(DGDFN,0),U))=DGDFN_"^"_VA("PID")_"^"_DGTST
  1. D PRNT
  1. D CLOSE^DGMTUTL
  1. Q
  1. HDR ; Header
  1. S DGC(1)="Means Test Using Previous Years Threshold"
  1. S DGC(2)="Date Range: "_$$FDATE^DGMTUTL(DGBEG)_" to "_$$FDATE^DGMTUTL(DGEND) D NOW^%DTC S DGC(3)="Run Date: "_$E($$FTIME^DGMTUTL(%),1,18)
  1. W:$E(IOST,1,2)["C-" @IOF F I=1:1:3 W !?(IOM-$L(DGC(I))/2),DGC(I)
  1. S DGPAGE=DGPAGE+1 W !?68,"Page ",DGPAGE,!,DGLINE,!
  1. W !?5,"Patient Name",?50," Patient ID ",?65,"Date of Test"
  1. W !?5,"------------",?50,"------------",?65,"------------",!
  1. Q
  1. PRNT ;Print patients
  1. U IO I '$D(^TMP("DGMTO",$J)) W !,"NO MEANS TEST WITH PREVIOUS YEARS THRESHOLD" Q
  1. F S DGPT=$O(^TMP("DGMTO",$J,DGPT)) Q:DGPT="" S DGPAT=^(DGPT) D Q:DGSTOP
  1. .W !,?5,$P(^DPT(+DGPAT,0),U),?50,$P(DGPAT,U,2),?65,$$FDATE^DGMTUTL($P(DGPAT,U,3))
  1. .D CHK
  1. Q
  1. ;
  1. CHK ;Check to pause on screen
  1. I ($Y+5)>IOSL,$E(IOST,1,2)="C-" D PAUSE S DGP=Y D:DGP HDR I 'DGP S DGSTOP=1 Q
  1. I $E(IOST,1,2)="P-",($Y+5)>IOSL D HDR Q
  1. Q
  1. PAUSE ;
  1. W ! S DIR(0)="E" D ^DIR K DIR W !
  1. Q
  1. ;