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

SRORATP.m

Go to the documentation of this file.
SRORATP ;B'HAM ISC/MAM - CANCEL RATES (CONT) ;[ 02/12/97  12:15 PM ]
 ;;3.0;Surgery;**63,182**;24 Jun 93;Build 49
 I SROTOT D ^SRORATA Q
 S (SRHDR,SRSS,SRSOUT,PAGE)=0
 F  S SRSS=$O(^TMP("SRT",$J,SRSS)) Q:SRSS=""!(SRSOUT)  D SP
 Q:SRSOUT  D ^SRORATA
 Q
SP D PAGE Q:SRSOUT  S SRSSNM="** "_$S(SRSS'="ZZ":SRSS,1:"SURGICAL SPECIALTY NOT ENTERED")_" **"
 S X=^TMP("SRT",$J,SRSS),Y=$P(X,"^"),TOTAL=Y+$P(X,"^",3),X=$P(X,"^",2),CANRATE=$S(Y>0:X/Y*100,1:0),CANRATE=CANRATE+.5\1*1
 S TOTRATE=$S(TOTAL>0:X/TOTAL*100,1:0),TOTRATE=TOTRATE+.5\1*1,TCAN=$S(TOTAL>0:Y/TOTAL*100,1:0),TCAN=TCAN+.5\1*1
 S TPRCNT="CANCELLATION RATE FOR SCHEDULED CASES: "_TCAN_" %"
 S SPRCNT="AVOIDABLE CANCELLATION RATE FOR SCHEDULED CASES: "_TOTRATE_" %"
 S CPRCNT="AVOIDABLE CANCELLATION RATE FOR CANCELLED CASES: "_CANRATE_" %"
 S TOTAL="TOTAL SCHEDULED SURGICAL CASES: "_TOTAL
 S SRCOL=80-$L(SRSSNM)\2 W !!,?SRCOL,SRSSNM
 W !!,TOTAL,!,TPRCNT,!,SPRCNT,!,CPRCNT D SUB
 S REASON=0 F  S REASON=$O(^TMP("SRT",$J,SRSS,REASON)) Q:REASON=""!(SRSOUT)  D REASON
 Q:SRSOUT  I $Y+4>IOSL D PAGE Q:SRSOUT
 S X=$P(^TMP("SRT",$J,SRSS),"^"),Y=$P(^(SRSS),"^",2)
 W !,?47,"-----",?64,"-----",!,"TOTAL CANCELLATIONS",?47,$J(X,4),?64,$J(Y,4)
 I $E(IOST)="P" W !! F LINE=1:1:80 W "="
 W ! Q
REASON I $Y+4>IOSL D PAGE Q:SRSOUT  D SUB
 S X=$P(^TMP("SRT",$J,SRSS,REASON),"^"),Y=$P(^(REASON),"^",2)
 W !,$S($E(REASON,1,2)="ZZ":$E(REASON,3,45),1:REASON),?47,$J(X,4),?64,$J(Y,4)
 Q
PAGE I 'SRHDR S SRHDR=1 G HDR
 S X="" I $E(IOST)'="P" W !!!,"Press RETURN to continue, or '^' to quit:  " R X:DTIME I '$T!(X["^") S SRSOUT=1 Q
 I X["?" W !!,"Enter RETURN to continue printing this report, or '^' to exit from this option." G PAGE
HDR ; print heading
 I $D(ZTQUEUED) D ^SROSTOP I SRHALT S SRSOUT=1 Q
 S X=$E(SRSD,4,5)_"/"_$E(SRSD,6,7)_"/"_$E(SRSD,2,3),Y=$E(SRED,4,5)_"/"_$E(SRED,6,7)_"/"_$E(SRED,2,3),PAGE=PAGE+1 I $Y W @IOF
 I $E(IOST)'="P" Q
 W !,?(80-$L(SRINST)\2),SRINST,?70,"PAGE: "_PAGE,!,?32,"SURGICAL SERVICE",!,?28,"CANCELLATION RATE REPORT",!,?27,"FROM "_X_"  TO "_Y
 S X=$E(DT,4,5)_"/"_$E(DT,6,7)_"/"_$E(DT,2,3) W !,?29,"DATE PRINTED: "_X
 W !,?21,"REVIEWED BY:",?45,"DATE REVIEWED:"
 W ! F LINE=1:1:80 W "="
 Q
SUB ; print column headings
 W !!,"PRIMARY CANCELLATION REASON",?45,"TOTAL CANCELS",?62,"TOTAL AVOIDABLE",! F LINE=1:1:80 W "-"
 Q