1 | SROAWL1 ;BIR/ADM - REPORT OF CASE WORKLOAD TOTALS (CONTINUED) ;02/12/07
|
---|
2 | ;;3.0; Surgery ;**38,47,60,62,68,50,86,88,92,153,160**;24 Jun 93;Build 7
|
---|
3 | ; SRTOTAL(1) = total of all cases completed (excluding aborted cases)
|
---|
4 | ; SRTOTAL(2) = excluded cases
|
---|
5 | ; SRTOTAL(3) = assessed cases
|
---|
6 | ; SRTOTAL(4) = not logged major cases
|
---|
7 | ; SRTOTAL(5) = cardiac cases
|
---|
8 | ; SRTOTAL(6) = non-cardiac cases
|
---|
9 | ; SRTOTAL(7) = assessed cases per day (at 20 days per month)
|
---|
10 | ; SRTOTAL(8) = total major cases
|
---|
11 | ; SRTOTAL(9) = total minor cases
|
---|
12 | ; SRTOTAL(10)= total eligible case based on CPT code
|
---|
13 | ; SRTOTAL(11)= not logged eligible cases
|
---|
14 | ;
|
---|
15 | I SRP U IO
|
---|
16 | N SRDIV,SRMULT S (SRDIV,SRMULT,SRSOUT)=0
|
---|
17 | I SRT S (SRCNT,X)=0 D
|
---|
18 | .F S X=$O(^SRO(133,X)) Q:'X I '$P($G(^SRO(133,X,0)),"^",21) S SRCNT=SRCNT+1,SRDIV(X)=$P(^SRO(133,X,0),"^")
|
---|
19 | .I SRCNT>1 S SRMULT=1
|
---|
20 | BEG S SRSDATE=SRDT I SRSEL=1 S X=+$E(SRDT,4,5),X=$S(X'=12:X+1,1:1),Y=$E(SRDT,1,3),Y=$S(X>1:Y,1:Y+1),SRED=Y_$S($L(X)=1:"0"_X,1:X)_"00"
|
---|
21 | I SRSEL=2 S X=$E(SREDT,1,5),SRED=X_"99"
|
---|
22 | K SRTOTAL F I=1:1:11 S SRTOTAL(I)=0
|
---|
23 | N SREXCL F I=0:1:9 S SREXCL(I)=0
|
---|
24 | S:'$D(SRINSTP) SRINSTP="ALL DIVISIONS"
|
---|
25 | I SRSEL=1 D MOS S Y=SRDT X ^DD("DD") S SRM="FOR "_Y,SRTITLE="REPORT OF MONTHLY SURGICAL CASE WORKLOAD"
|
---|
26 | I SRSEL=2 S SRTITLE="REPORT OF SURGICAL CASE WORKLOAD" D
|
---|
27 | .S Y=SRDT X ^DD("DD") S SRM="FOR "_Y_" THROUGH " S Y=SREDT X ^DD("DD") S SRM=SRM_Y
|
---|
28 | F S SRSDATE=$O(^SRF("AC",SRSDATE)) Q:SRSDATE>SRED!'SRSDATE S SRTN=0 F S SRTN=$O(^SRF("AC",SRSDATE,SRTN)) Q:'SRTN I $D(^SRF(SRTN,0)),$$MANDIV^SROUTL0(SRINSTP,SRTN) D CASE
|
---|
29 | F K="C","N" S SRDFN=0 F S SRDFN=$O(^SRF("ARS",K,"I",SRDFN)) Q:'SRDFN S SRTN=0 F S SRTN=$O(^SRF("ARS",K,"I",SRDFN,SRTN)) Q:'SRTN I $D(^SRF(SRTN,0)),$$MANDIV^SROUTL0(SRINSTP,SRTN) D OPDATE
|
---|
30 | I SRSEL=1 S SRTOTAL(7)=SRTOTAL(3)/20 D:'SRP INC D:SRP OUT G:SRSOUT END D:SRT TMIT
|
---|
31 | I SRSEL=2 D OUT
|
---|
32 | END K SRINSTP,SRTOTAL,^TMP("SRM",$J) I SRT,SRMULT S SRP=0 S SRDIV=$O(SRDIV(SRDIV)) Q:'SRDIV D SITE,BEG
|
---|
33 | Q
|
---|
34 | CASE ; examine case
|
---|
35 | Q:$P($G(^SRF(SRTN,30)),"^")!$P($G(^SRF(SRTN,31)),"^",8)!'($P($G(^SRF(SRTN,.2)),"^",12)!($P($G(^SRF(SRTN,.2)),"^",3)))
|
---|
36 | N SRELIG S SRELIG=""
|
---|
37 | S SRTOTAL(1)=SRTOTAL(1)+1,SRMAJ=$S($P(^SRF(SRTN,0),"^",3)="J":1,1:0) S:SRMAJ SRTOTAL(8)=SRTOTAL(8)+1 I 'SRMAJ S SRTOTAL(9)=SRTOTAL(9)+1
|
---|
38 | I $$XL^SROAX(SRTN) S SRELIG=1,SRTOTAL(10)=SRTOTAL(10)+1
|
---|
39 | S SRA=$G(^SRF(SRTN,"RA")),SRTYPE=$P(SRA,"^",2) S:SRTYPE=""&SRMAJ SRTOTAL(4)=SRTOTAL(4)+1 S:SRTYPE="C" SRTOTAL(5)=SRTOTAL(5)+1
|
---|
40 | I SRTYPE=""&SRELIG S SRTOTAL(11)=SRTOTAL(11)+1
|
---|
41 | S SRASS=$P(SRA,"^",6) D
|
---|
42 | .I SRASS="N" S SRTOTAL(2)=SRTOTAL(2)+1,X=$P(SRA,"^",7) S:X'="" SREXCL(X)=SREXCL(X)+1
|
---|
43 | .I SRASS="Y" S SRTOTAL(3)=SRTOTAL(3)+1
|
---|
44 | I SRTYPE="N",SRASS="Y" S SRTOTAL(6)=SRTOTAL(6)+1
|
---|
45 | Q
|
---|
46 | OPDATE ; get date of operation
|
---|
47 | S SRA=$G(^SRF(SRTN,"RA")) I $P(SRA,"^")'="I" K ^SRF("ARS",K,"I",SRDFN,SRTN) Q
|
---|
48 | S SRTYPE=$P(SRA,"^",2) I SRTYPE'=K K ^SRF("ARS",K,"I",SRDFN,SRTN) Q
|
---|
49 | I SRSEL=1 S SRMONTH=$E($P(^SRF(SRTN,0),"^",9),1,5)_"00" I $D(^TMP("SRM",$J,SRMONTH,K)) S ^TMP("SRM",$J,SRMONTH,K)=^TMP("SRM",$J,SRMONTH,K)+1
|
---|
50 | Q
|
---|
51 | OUT ; print report
|
---|
52 | W:$Y @IOF W !,?(80-$L(SRINST)\2),SRINST,!,?(80-$L(SRTITLE)\2),SRTITLE,!,?(80-$L(SRM)\2),SRM,!,?15 F I=1:1:50 W "-"
|
---|
53 | W !,?20,"TOTAL CASES PERFORMED",?54,"=",$J(SRTOTAL(1),6),!,?24,"TOTAL ELIGIBLE CASES",?54,"=",$J(SRTOTAL(10),6)
|
---|
54 | ;W !,?24,"TOTAL MAJOR CASES",?54,"=",$J(SRTOTAL(8),6),!,?24,"TOTAL MINOR CASES",?54,"=",$J(SRTOTAL(9),6)
|
---|
55 | W !,?20,"CASES MEETING EXCLUSION CRITERIA",?54,"=",$J(SRTOTAL(2),6)
|
---|
56 | W !,?24,"NON-SURGEON CASE",?54,"=",$J(SREXCL(0),6)
|
---|
57 | W !,?24,"EXCEEDS MAX. ASSESSMENTS",?54,"=",$J(SREXCL(2),6),!,?24,"EXCEEDS MAXIMUM TURPS",?54,"=",$J(SREXCL(3),6)
|
---|
58 | W !,?24,"STUDY CRITERIA",?54,"=",$J(SREXCL(4),6),!,?24,"SCNR WAS ON A/L",?54,"=",$J(SREXCL(6),6)
|
---|
59 | W !,?24,"CONCURRENT CASE",?54,"=",$J(SREXCL(8),6),!,?24,"EXCEEDS MAXIMUM HERNIAS",?54,"=",$J(SREXCL(9),6)
|
---|
60 | W !,?20,"ASSESSED CASES",?54,"=",$J(SRTOTAL(3),6)
|
---|
61 | ;W !,?20,"NOT LOGGED MAJOR CASES",?54,"=",$J(SRTOTAL(4),6)
|
---|
62 | W !,?20,"NOT LOGGED ELIGIBLE CASES",?54,"=",$J(SRTOTAL(11),6)
|
---|
63 | W !,?20,"CARDIAC CASES",?54,"=",$J(SRTOTAL(5),6),!,?20,"NON-CARDIAC CASES",?54,"=",$J(SRTOTAL(6),6)
|
---|
64 | W:SRSEL=1 !,?20,"ASSESSED CASES PER DAY",?54,"=",$J(SRTOTAL(7),9,2) W !,?15 F I=1:1:50 W "-"
|
---|
65 | Q:SRSEL=2 I $E(IOST)="C" D PRESS Q:SRSOUT W @IOF
|
---|
66 | INC S (SRCT,SRT1,SRTC)=0 W:SRP !!!!,?12,"NUMBER OF INCOMPLETE ASSESSMENTS REMAINING FOR PAST YEAR",!!,?29,"CARDIAC",?40,"NON-CARDIAC",?56,"TOTAL",!,?29,"-------",?40,"-----------",?56,"-----"
|
---|
67 | S SRMONTH=0,SRSST="" F S SRMONTH=$O(^TMP("SRM",$J,SRMONTH)) Q:'SRMONTH D
|
---|
68 | .I SRP S Y=SRMONTH X ^DD("DD") W !,?19,Y
|
---|
69 | .S SRC=^TMP("SRM",$J,SRMONTH,"C"),SRN=^TMP("SRM",$J,SRMONTH,"N"),SRTO=SRC+SRN,SRCT=SRCT+SRC,SRT1=SRT1+SRN,SRTC=SRTC+SRTO,SRSST=SRSST_SRMONTH_"^"_SRC_"^"_SRN_"^"
|
---|
70 | .W:SRP ?30,$J(SRC,5),?43,$J(SRN,5),?55,$J(SRTO,5)
|
---|
71 | W:SRP !,?29,"-------",?40,"-----------",?56,"-----",!,?30,$J(SRCT,5),?43,$J(SRT1,5),?55,$J(SRTC,5)
|
---|
72 | Q
|
---|
73 | TMIT ; transmit report to national database
|
---|
74 | S ISC=0,SRD=^XMB("NETNAME") I $E(SRD,1,3)="FO-"!(SRD["ISC-")!(SRD["ISC.")!(SRD["FORUM")!(SRD["TST")!(SRD[".FO-") S ISC=1
|
---|
75 | K SRMSG S SRSTATN=$P($$SITE^SROVAR,"^",3)_$S(SRDIV:"-"_SRDIV,1:""),SRMSG(1)=SRSTATN_"^"_SRDT_"^"_DT F I=1:1:9 S SRMSG(1)=SRMSG(1)_"^"_SRTOTAL(I)
|
---|
76 | F I=1,2,3,4,6,8,9,0 S SRMSG(1)=SRMSG(1)_"^"_SREXCL(I)
|
---|
77 | I SRDIV S SRMSG(1)=SRMSG(1)_"^"_SRINST_"^"_$$GET1^DIQ(4,SRINSTP,99)
|
---|
78 | S SRMSG(2)=SRSTATN_"^"_SRSST_SREXCL(0)
|
---|
79 | S SRMSG(3)=SRSTATN_"^"_$S($D(SRNOACK):SRNOACK,1:0)_"^"_SRTOTAL(10)_"^"_SRTOTAL(11)
|
---|
80 | S XMDUZ=.5,XMSUB="SURGERY WORKLOAD "_SRM
|
---|
81 | I ISC S XMY("G.RISK ASSESSMENT")=""
|
---|
82 | I 'ISC S (XMY("S.SRAWSERV@FO-HINES.MED.VA.GOV"),XMY("G.SRCOSERV@FO-HINES.MED.VA.GOV"))=""
|
---|
83 | S XMTEXT="SRMSG(" D ^XMD K XMSUB,XMY,XMDUZ,XMTEXT
|
---|
84 | Q
|
---|
85 | MOS ; set up array for past 12 months
|
---|
86 | K SRMONTH S SRYR=$E(SRDT,1,3),SRMONTH=+$E(SRDT,4,5)
|
---|
87 | S J=1 F S:$L(SRMONTH)=1 SRMONTH="0"_SRMONTH S SRMONTH(J)=SRYR_SRMONTH_"00" S SRMONTH=+SRMONTH,SRMONTH=$S(SRMONTH=1:12,1:SRMONTH-1),SRYR=$S(SRMONTH=12:SRYR-1,1:SRYR),J=J+1 Q:J>13
|
---|
88 | K ^TMP("SRM",$J) F I=1:1:13 F J="C","N" S ^TMP("SRM",$J,SRMONTH(I),J)=0
|
---|
89 | Q
|
---|
90 | PRESS Q:$E(IOST)'="C" K DIR S DIR(0)="E" D ^DIR K DIR I 'Y S SRSOUT=1
|
---|
91 | Q
|
---|
92 | SITE S SRINSTP=SRDIV(SRDIV),SRINST=$$GET1^DIQ(4,SRINSTP,.01)
|
---|
93 | Q
|
---|