1 | GMRCSTL1 ;SLC/DCM,dee;MA - List Manager Format Routine - Get Active Consults by service - pending,active,scheduled,incomplete,etc. ;11/13/02 08:30
|
---|
2 | ;;3.0;CONSULT/REQUEST TRACKING;**7,21,22,29**;DEC 27, 1997
|
---|
3 | ; Patch #21 changed array GMRCTOT to ^TMP("GMRCTOT,$J)
|
---|
4 | ; This routine invokes IA #875, #2638
|
---|
5 | Q
|
---|
6 | STATNAME(STATUS) ;Return the name for the status number
|
---|
7 | I STATUS<9 Q $S(STATUS=1:"Discont.",STATUS=2:"Completed",STATUS=3:"On Hold",STATUS=4:"Flagged",STATUS=5:"Pending",STATUS=6:"Active",STATUS=7:"Expired",STATUS=8:"Scheduled",1:"No Status")
|
---|
8 | E Q $S(STATUS=9:"Incomplete",STATUS=10:"Delayed",STATUS=11:"Unreleased",STATUS=12:"Discont/Ed",STATUS=13:"Cancelled",STATUS=14:"Lapsed",STATUS=15:"Renewed",1:"No Status")
|
---|
9 | Q
|
---|
10 | ;
|
---|
11 | STATABBR(STATUS) ;Return the name for the status number
|
---|
12 | Q ^ORD(100.01,STATUS,.1)
|
---|
13 | ;
|
---|
14 | LISTTOT(COUNT,GEN,INDEX,NAME,GROUPNAM,CONTROL,ARRN) ;
|
---|
15 | N LOOP,STATUS,STS,CTRLTEMP,GMRCTOTS
|
---|
16 | S CTRLTEMP=$S(CONTROL#2:"^",1:"")
|
---|
17 | I GEN=2 D
|
---|
18 | . S COUNT=COUNT+1
|
---|
19 | . S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP
|
---|
20 | . S COUNT=COUNT+1
|
---|
21 | . S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_" GROUPER: "_NAME_" Totals:"
|
---|
22 | S GMRCTOTS=0
|
---|
23 | I $L(GMRCSTAT,",")=16 S GMRCTOTS=1 ;only incl. totals if all status
|
---|
24 | F LOOP=1:1:$L(GMRCSTAT,",") S STATUS=$P(GMRCSTAT,",",LOOP) I ^TMP("GMRCTOT",$J,GEN,INDEX,STATUS)>0 D
|
---|
25 | .S COUNT=COUNT+1
|
---|
26 | .S STS=$$STATNAME(STATUS)
|
---|
27 | .I GEN=1 S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"To Service "_NAME_" Total Requests "_STS_$J(^TMP("GMRCTOT",$J,1,INDEX,STATUS),6,0)
|
---|
28 | .E S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"To Grouper "_NAME_" Total Requests "_STS_$J(^TMP("GMRCTOT",$J,2,INDEX,STATUS),6,0)
|
---|
29 | ;If any printed are pending then print the total that are pending for all pending status.
|
---|
30 | I ^TMP("GMRCTOT",$J,GEN,INDEX,"P")>0 D
|
---|
31 | .S COUNT=COUNT+1
|
---|
32 | .I GEN=1 S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests Pending Resolution To Service "_NAME_": "_$J(^TMP("GMRCTOT",$J,1,INDEX,"P"),6,0)
|
---|
33 | .E S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests Pending Resolution To Grouper "_NAME_": "_$J(^TMP("GMRCTOT",$J,2,INDEX,"P"),6,0)
|
---|
34 | ; IF Consults
|
---|
35 | I ARRN="IFC" D
|
---|
36 | .N IRFN,VALSVC,VALTOT S IRFN=""
|
---|
37 | .F S IRFN=$O(^TMP("GMRCTOT",$J,GEN,INDEX,"F",IRFN)) Q:IRFN="" D
|
---|
38 | ..S COUNT=COUNT+1
|
---|
39 | ..I GMRCTOTS D
|
---|
40 | ...I GEN=1 S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests To Service "_$E(NAME,1,16)_" @ "_$E(IRFN,1,16)_": "_$J(^TMP("GMRCTOT",$J,1,INDEX,"F",IRFN),6,0)
|
---|
41 | ...E S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests to Grouper "_$E(NAME,1,20)_" @ "_$E(IRFN,1,20)_": "_$J(^TMP("GMRCTOT",$J,2,INDEX,"F",IRFN),6,0)
|
---|
42 | ..I $P($G(GMRCST(GEN,INDEX,IRFN)),"^",2)>0 D
|
---|
43 | ...S COUNT=COUNT+1
|
---|
44 | ...S VALSVC=$P(GMRCST(GEN,INDEX,IRFN),"^")\$P(GMRCST(GEN,INDEX,IRFN),"^",2)
|
---|
45 | ...S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Mean Days Completed To "_$S(GEN=1:"Service ",1:"Grouper ")_$E(NAME,1,20)_" @ "_$E(IRFN,1,20)_": "_$J(VALSVC,4,0)
|
---|
46 | .I $P($G(GMRCST(GEN,INDEX)),"^",2)>0 D
|
---|
47 | ..S COUNT=COUNT+1
|
---|
48 | ..S VALTOT=$P(GMRCST(GEN,INDEX),"^")\$P(GMRCST(GEN,INDEX),"^",2)
|
---|
49 | ..S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Mean Days Completed To "_$S(GEN=1:"Service ",1:"Grouper ")_$E(NAME,1,20)_": "_$J(VALTOT,4,0)
|
---|
50 | S COUNT=COUNT+1
|
---|
51 | I GMRCTOTS D
|
---|
52 | .I GEN=1 S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests To Service "_NAME_": "_$J(^TMP("GMRCTOT",$J,1,INDEX,"T"),6,0)
|
---|
53 | .E S ^TMP("GMRCR",$J,ARRN,COUNT,0)=CTRLTEMP_"Total Requests To Grouper "_NAME_": "_$J(^TMP("GMRCTOT",$J,2,INDEX,"T"),6,0)
|
---|
54 | Q
|
---|
55 | ;
|
---|