| 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 |  ;
 | 
|---|