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

RALWKL4.m

Go to the documentation of this file.
  1. RALWKL4 ;HISC/FPT-Workload Reports By Functional Area ;4/11/96 09:33
  1. ;;5.0;Radiology/Nuclear Medicine;;Mar 16, 1998
  1. EN1 ; This subroutine prints out only the Summary data as requested by the
  1. ; user.
  1. S RADIV=""
  1. F S RADIV=$O(^TMP($J,"RA",RADIV)) Q:RAXIT!(RADIV="") S RADIVNDE=$G(^(RADIV)) D IMGSUM,DIVSUM:'RAXIT
  1. K BEGDATE,ENDDATE,I,RADIFLG,RADIV,RADIVNDE,RADIVTOT,RADIVWWU,RAFL,RAFLD,RAFLDCNT,RAFLDNDE,RAFLDTOT,RAFLDWWU,RAIMG,RAIMGNDE,RAIMGSUM,RAIMGTOT,RAIMGWWU,RAINPUT,RAITCNT,RAITHLD,RALN,RAPG,RASUMNDE,RATDY,RATITLE,RAXIT
  1. Q
  1. IMGSUM ; imaging summary
  1. S RAIMG="",RAIMGSUM="",RADIVTOT=0,RADIVWWU=$P(RADIVNDE,U,5)
  1. F I=1:1:4 S RADIVTOT=RADIVTOT+(+$P(RADIVNDE,U,I))
  1. F S RAIMG=$O(^TMP($J,"RA",RADIV,RAIMG)) Q:RAXIT!(RAIMG="") S RAIMGNDE=$G(^(RAIMG)) D HD^RALWKL1,IMGTOT,RAFLD,PIMGTOT:'RAXIT Q:RAXIT I RADIFLG(RADIV)>1 S RAXIT=$$EOS^RAUTL5()
  1. Q
  1. IMGTOT ; calculate imaging totals
  1. S RAIMGTOT=0,RAIMGWWU=$P(RAIMGNDE,U,5)
  1. F I=1:1:4 S RAIMGTOT=RAIMGTOT+(+$P(RAIMGNDE,U,I))
  1. Q
  1. RAFLD ;
  1. S RAFLD=""
  1. F S RAFLD=$O(^TMP($J,"RA",RADIV,RAIMG,RAFLD)) Q:RAXIT!(RAFLD="") S RAFLDNDE=$G(^(RAFLD)) D PFLDTOT
  1. Q
  1. PFLDTOT ; print rafld totals within imaging type
  1. S RAFLDTOT=0,RAFLDWWU=$P(RAFLDNDE,U,5)
  1. F I=1:1:4 S RAFLDTOT=RAFLDTOT+(+$P(RAFLDNDE,U,I))
  1. Q:'RAFLDTOT
  1. W !,$E(RAFLD,1,28),?30,$J(+$P(RAFLDNDE,U,1),5)
  1. W ?36,$J(+$P(RAFLDNDE,U,2),5)
  1. W ?42,$J(+$P(RAFLDNDE,U,3),5)
  1. W ?48,$J(+$P(RAFLDNDE,U,4),5)
  1. W ?55,$J(RAFLDTOT,5)
  1. W:$D(RAFL) ?62,$J($S(RAIMGTOT:(100*RAFLDTOT)/RAIMGTOT,1:0),5,1)
  1. W ?68,$J(RAFLDWWU,5)
  1. W:$D(RAFL) ?75,$J($S(RAIMGWWU:(100*RAFLDWWU)/RAIMGWWU,1:0),5,1)
  1. I ($Y+4)>IOSL S RAXIT=$$EOS^RAUTL5 Q:RAXIT I $O(^TMP($J,"RA",RADIV,RAIMG,RAFLD))]"" D HD^RALWKL1
  1. Q
  1. PIMGTOT ; print imaging type totals
  1. I ($Y+4)>IOSL S RAXIT=$$EOS^RAUTL5 Q:RAXIT D HD^RALWKL1
  1. Q:RAXIT W !,RALN
  1. W !!,"Imaging Type Total:",?30,$J(+$P(RAIMGNDE,U,1),5)
  1. W ?36,$J(+$P(RAIMGNDE,U,2),5)
  1. W ?42,$J(+$P(RAIMGNDE,U,3),5)
  1. W ?48,$J(+$P(RAIMGNDE,U,4),5)
  1. W ?55,$J(RAIMGTOT,5)
  1. W ?68,$J(RAIMGWWU,5)
  1. W !!?3,"# of "_RATITLE_"s selected: "_$S(RAINPUT=1:"ALL",1:$G(RAFLDCNT))
  1. Q
  1. DIVSUM ; print division totals
  1. I RADIFLG(RADIV)=1,$O(RADIFLG(RADIV))]"" S RAXIT=$$EOS^RAUTL5 Q:RAXIT
  1. Q:RADIFLG(RADIV)=1 ;quit if only one imaging type selected for division
  1. D DIVHDR Q:RAXIT
  1. S RAFLD=""
  1. F S RAFLD=$O(^TMP($J,"RA1",RADIV,RAFLD)) Q:RAXIT!(RAFLD="") S RASUMNDE=$G(^(RAFLD)) D PDIVFLD
  1. D:'RAXIT PDIVTOT
  1. I $O(^TMP($J,"RA",RADIV))]"" S RAXIT=$$EOS^RAUTL5
  1. Q
  1. PDIVFLD ;
  1. S RAFLDTOT=0
  1. F I=1:1:4 S RAFLDTOT=RAFLDTOT+(+$P(RASUMNDE,U,I))
  1. W !,$E(RAFLD,1,28),?30,$J(+$P(RASUMNDE,U,1),5),?36,$J(+$P(RASUMNDE,U,2),5),?42,$J(+$P(RASUMNDE,U,3),5),?48,$J(+$P(RASUMNDE,U,4),5),?55,$J(RAFLDTOT,5)
  1. W ?62,$J($S(RADIVTOT:(RAFLDTOT*100)/RADIVTOT,1:0),5,1)
  1. W ?68,$J(+$P(RASUMNDE,U,5),5)
  1. W:$D(RAFL) ?75,$J($S(RADIVWWU:($P(RASUMNDE,U,5)*100)/RADIVWWU,1:0),5,1)
  1. I ($Y+4)>IOSL S RAXIT=$$EOS^RAUTL5() D:'RAXIT DIVHDR
  1. Q
  1. PDIVTOT ;
  1. I ($Y+4)>IOSL S RAXIT=$$EOS^RAUTL5() Q:RAXIT D DIVHDR
  1. W !,RALN,!!,"Division Total",?30,$J(+$P(RADIVNDE,U,1),5),?36,$J(+$P(RADIVNDE,U,2),5),?42,$J(+$P(RADIVNDE,U,3),5),?48,$J(+$P(RADIVNDE,U,4),5),?55,$J(RADIVTOT,5)
  1. W ?68,$J(+$P(RADIVNDE,U,5),5)
  1. I ($Y+(RADIFLG(RADIV)\2)+3)>IOSL S RAXIT=$$EOS^RAUTL5() Q:RAXIT D DIVHDR
  1. W !!?2,"Imaging Type(s): "
  1. S RAITHLD=""
  1. F S RAITHLD=$O(^TMP($J,"RA",RADIV,RAITHLD)) Q:RAXIT!(RAITHLD="") W:$X>(80-25) !?($X+$L("Imaging Type(s):")+3) D
  1. .I $Y>(IOSL-4) S RAXIT=$$EOS^RAUTL5() D:'RAXIT DIVHDR Q:RAXIT
  1. .W $S($D(^RA(79.2,+$P(RAITHLD,"-",2),0)):$P(^(0),U,1),1:"UNKNOWN"),?($X+3)
  1. Q:RAXIT
  1. W !!?3,"# of "_RATITLE_"s selected: "_$S(RAINPUT=1:"ALL",1:$G(RAFLDCNT))
  1. Q
  1. DIVHDR ; division totals header
  1. W:$Y>0 @IOF W !?5,">>> ",RATITLE," Workload Report <<<" S RAPG=RAPG+1 W ?70,"Page: ",RAPG
  1. W !!,?4,"Division: ",$S($D(^DIC(4,+RADIV,0)):$P(^(0),U,1),1:"UNKNOWN"),?52,"For period: " W ?64,BEGDATE("X"),?76," to"
  1. W !?4,"Run Date: ",RATDY W ?64,ENDDATE("X")
  1. W !!?32,"-------Examinations------",!?62,"% of" W:$D(RAFL) ?75," % of"
  1. W !,RATITLE,?30," Inpt",?36," Opt",?42," Res",?48,"Other",?55,"Total",?62,"Exams"
  1. W:$D(RAFL) ?68," WWU",?75," WWU"
  1. W !,RALN
  1. W !?10,"(Division Summary)"
  1. I $D(ZTQUEUED) D STOPCHK^RAUTL9 S:$G(ZTSTOP)=1 RAXIT=1
  1. Q