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

APCDFCTP.m

Go to the documentation of this file.
  1. APCDFCTP ; IHS/CMI/LAB - print apc report by prov disc ;
  1. ;;2.0;IHS PCC SUITE;;MAY 14, 2009
  1. START ;
  1. S APCD80S="-------------------------------------------------------------------------------",APCDPG=0
  1. S Y=APCDBD D DD^%DT S APCDBDD=Y S Y=APCDED D DD^%DT S APCDEDD=Y
  1. S (APCDTOT,APCDPROV,APCDTDES)=0
  1. K APCDQUIT
  1. I '$D(^XTMP("APCDFCT",APCDJOB,APCDBT)) S APCDPROV="NONE TO REPORT" D HEAD G DONE
  1. F S APCDPROV=$O(^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV)) Q:APCDPROV=""!($D(APCDQUIT)) D HEAD Q:$D(APCDQUIT) D SORT
  1. G:$D(APCDQUIT) DONE
  1. I $Y>(IOSL-5) D HEAD G:$D(APCDQUIT) DONE
  1. W !?42,"------",?52,"-------",?65,"------",!
  1. W ?5,"Grand Total for ALL Operators:",?42,$J(APCDTOT,6),?52,$J(APCDTDES,7) S APCDAVG=APCDTDES/APCDTOT W ?65,$J(APCDAVG,6,1)
  1. D SUMMPAGE
  1. DONE ;
  1. I $E(IOST)="C",IO=IO(0) S DIR(0)="E" D ^DIR K DIR
  1. W:$D(IOF) @IOF
  1. K ^XTMP("APCDFCT",APCDJOB,APCDBT),APCDJOB,APCDBT
  1. Q
  1. SORT ;
  1. S (APCDSUB,APCDDESU)=0,APCDFCT("DAYS",APCDPROV)=0
  1. S APCDSORT="" F S APCDSORT=$O(^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT)) Q:APCDSORT=""!($D(APCDQUIT)) D SORT1
  1. W !?42,"------",?52,"-------",?65,"------",!
  1. W ?5,"Totals for ",APCDPROV,?42,$J(APCDSUB,6),?52,$J(APCDDESU,7),?65,$J((APCDDESU/APCDSUB),6,1)
  1. S APCDFCT("FORMS",APCDPROV)=APCDSUB
  1. S APCDFCT("AVG DEC",APCDPROV)=$J((APCDDESU/APCDSUB),6,1)
  1. Q
  1. SORT1 ;
  1. I $Y>(IOSL-6) D HEAD Q:$D(APCDQUIT)
  1. W !,$S(APCDSRT]"":APCDSORT,1:"")
  1. S APCDDATE=0 F S APCDDATE=$O(^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,APCDDATE)) Q:APCDDATE'=+APCDDATE!($D(APCDQUIT)) D WRITE
  1. Q
  1. ;
  1. WRITE ;
  1. S Y=APCDDATE D DD^%DT S APCDWDAT=Y
  1. I $Y>(IOSL-5) D HEAD Q:$D(APCDQUIT)
  1. S APCDVDES=^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,"DEP COUNT",APCDDATE),APCDAVG=(APCDVDES/^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,APCDDATE))\1
  1. W ?25,APCDWDAT,?42,$J(^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,APCDDATE),6),?52,$J(APCDVDES,7),?65,$J(APCDAVG,6),!
  1. S APCDSUB=APCDSUB+^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,APCDDATE),APCDTOT=APCDTOT+^XTMP("APCDFCT",APCDJOB,APCDBT,APCDPROV,APCDSORT,APCDDATE),APCDDESU=APCDDESU+APCDVDES,APCDTDES=APCDTDES+APCDVDES
  1. S APCDFCT("DAYS",APCDPROV)=APCDFCT("DAYS",APCDPROV)+1
  1. Q
  1. SUMMPAGE ;
  1. I $E(IOST)="C",IO=IO(0) W ! S DIR(0)="EO" D ^DIR K DIR I Y=0!(Y="^")!($D(DTOUT)) S APCDQUIT="" Q
  1. W:$D(IOF) @IOF S APCDPG=APCDPG+1
  1. W !?55,$$FMTE^XLFDT(DT),?70,"Page ",APCDPG
  1. W !?20,"SUMMARY OF FORMS KEYED BY ALL OPERATORS"
  1. W !?15,"VISIT POSTING DATES: ",APCDBDD," TO ",APCDEDD,!
  1. W !?35,"No. of",?43,"Forms",?53,"% of",?65,"Avg # of"
  1. W !?11,"Operator",?35,"Forms",?43,"per day",?53,"Workload",?65,"tran codes ent"
  1. W !,APCD80S
  1. S X="" F S X=$O(APCDFCT("FORMS",X)) Q:X="" W !,X,?32,$J(APCDFCT("FORMS",X),8),?40,$J((APCDFCT("FORMS",X)/APCDFCT("DAYS",X)),8,1),?51,$J(((APCDFCT("FORMS",X)/APCDTOT)*100),8,1),?67,APCDFCT("AVG DEC",X)
  1. W !?35,"--------",!?32,$J(APCDTOT,8)
  1. Q
  1. I $E(IOST)="C",IO=IO(0) W ! S DIR(0)="EO" D ^DIR K DIR I Y=0!(Y="^")!($D(DTOUT)) S APCDQUIT="" Q
  1. HEAD1 ;
  1. W @IOF S APCDPG=APCDPG+1
  1. W !?55,$$FMTE^XLFDT(DT),?70,"Page ",APCDPG,!
  1. S APCDLENG=$L($P(^DIC(4,DUZ(2),0),U))
  1. W ?((80-APCDLENG)/2),$P(^DIC(4,DUZ(2),0),U),!
  1. S APCDLENG=37+$L(APCDSRT)
  1. I APCDSRT]"" W ?((80-APCDLENG)/2),"NUMBER OF FORMS KEYED SUBTOTALED BY ",APCDSRT,!
  1. I APCDSRT="" W ?29,"NUMBER OF FORMS KEYED",!
  1. S APCDLENG=21+$L(APCDPROV)
  1. W ?((80-APCDLENG)/2),"DATE ENTRY OPERATOR: ",APCDPROV,!
  1. W ?15,"VISIT POSTING DATES: ",APCDBDD," TO ",APCDEDD,!
  1. W !,APCDSRT,?25,"POSTING DATE",?40,"# FORMS",?50,"# TRANS",?63,"AVG # TRAN ENT",!
  1. W APCD80S,!
  1. Q