| 1 | PXRMOBJX ;SLC/AGP,JVS - CLINICAL REMINDERS ;5/15/03  14:15 | 
|---|
| 2 | ;;2.0;CLINICAL REMINDERS;;Feb 04, 2005 | 
|---|
| 3 | Q | 
|---|
| 4 | ; | 
|---|
| 5 | STATUS(DFN,ARRAY,MISSING) ;Evaluate The status of the Referral | 
|---|
| 6 | ; | 
|---|
| 7 | N STOP,ZTSK,CNT,GEC1,GEC2,GEC3,GECF,SOURCE | 
|---|
| 8 | S STOP=0,CNT=0,ARRAY="" | 
|---|
| 9 | ; | 
|---|
| 10 | ;Returned | 
|---|
| 11 | ;ARRAY as an array of information | 
|---|
| 12 | ; | 
|---|
| 13 | N HFDA,STOP | 
|---|
| 14 | D ACOPYDEL^PXRMGECK | 
|---|
| 15 | ; | 
|---|
| 16 | ;GET IEN FOR DATA SOURCES FOR GEC | 
|---|
| 17 | I $D(^PX(839.7,"B","GEC1")) S GEC1=$O(^PX(839.7,"B","GEC1","")) | 
|---|
| 18 | I $D(^PX(839.7,"B","GEC2")) S GEC2=$O(^PX(839.7,"B","GEC2","")) | 
|---|
| 19 | I $D(^PX(839.7,"B","GEC3")) S GEC3=$O(^PX(839.7,"B","GEC3","")) | 
|---|
| 20 | I $D(^PX(839.7,"B","GECF")) S GECF=$O(^PX(839.7,"B","GECF","")) | 
|---|
| 21 | ; | 
|---|
| 22 | S STOP=0 | 
|---|
| 23 | S HFDA="" F  S HFDA=$O(^AUPNVHF("C",DFN,HFDA)) Q:HFDA=""  Q:STOP=1  D | 
|---|
| 24 | .I $D(^AUPNVHF(HFDA,12)) D | 
|---|
| 25 | ..I $P($G(^AUPNVHF(HFDA,12)),"^",1)>0 D | 
|---|
| 26 | ...S SOURCE=$P($G(^AUPNVHF(HFDA,812)),"^",3) | 
|---|
| 27 | ...Q:SOURCE="" | 
|---|
| 28 | ...I (SOURCE=$G(GEC1))!(SOURCE=$G(GEC2))!(SOURCE=$G(GEC3))!(SOURCE=$G(GECF)) D | 
|---|
| 29 | ....S STOP=1 | 
|---|
| 30 | ; | 
|---|
| 31 | S (MISSING)="" | 
|---|
| 32 | I '$D(^PXRMD(801.5,"B",DFN))&(STOP=0) D | 
|---|
| 33 | .S ARRAY($$UP,1)="No GEC Referral on record." | 
|---|
| 34 | I '$D(^PXRMD(801.5,"B",DFN))&(STOP=1) D | 
|---|
| 35 | .S ARRAY($$UP,1)="No GEC Referral in progress." | 
|---|
| 36 | Q:'$D(^PXRMD(801.5,"B",DFN)) | 
|---|
| 37 | ; | 
|---|
| 38 | ; | 
|---|
| 39 | ; A. look for missing dialog | 
|---|
| 40 | S:'$D(^PXRMD(801.5,"AD",DFN,"GEC1")) MISSING=MISSING_1_"^" | 
|---|
| 41 | S:'$D(^PXRMD(801.5,"AD",DFN,"GEC2")) MISSING=MISSING_2_"^" | 
|---|
| 42 | S:'$D(^PXRMD(801.5,"AD",DFN,"GEC3")) MISSING=MISSING_3_"^" | 
|---|
| 43 | ;S:'$D(^PXRMD(801.5,"AD",DFN,"GECF")) MISSING=MISSING_4 | 
|---|
| 44 | ;    a. if none missing then set message | 
|---|
| 45 | ;    b. if missing then create message | 
|---|
| 46 | I MISSING'=""!(MISSING="") D | 
|---|
| 47 | .S ARRAY($$UP,1)="The following Dialog(s) are Complete:" | 
|---|
| 48 | .S:MISSING'[1 ARRAY($$UP,1)=$P($T(T+7),";",3) D | 
|---|
| 49 | ..I +$$TIUSTAT^PXRMGECK(DFN,"GEC1") D | 
|---|
| 50 | ...S ARRAY($$UP,1)="          Note Status: "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC1"),":",2)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC1"),":",3)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC1"),":",4) | 
|---|
| 51 | .S:MISSING'[2 ARRAY($$UP,1)=$P($T(T+8),";",3) D | 
|---|
| 52 | ..I +$$TIUSTAT^PXRMGECK(DFN,"GEC2") D | 
|---|
| 53 | ...S ARRAY($$UP,1)="          Note Status: "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC2"),":",2)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC2"),":",3)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC2"),":",4) | 
|---|
| 54 | .S:MISSING'[3 ARRAY($$UP,1)=$P($T(T+9),";",3) D | 
|---|
| 55 | ..I +$$TIUSTAT^PXRMGECK(DFN,"GEC3") D | 
|---|
| 56 | ...S ARRAY($$UP,1)="          Note Status: "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC3"),":",2)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC3"),":",3)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GEC3"),":",4) | 
|---|
| 57 | .;S:MISSING'[4 ARRAY($$UP,1)=$P($T(T+10),";",3) D | 
|---|
| 58 | .;.I +$$TIUSTAT^PXRMGECK(DFN,"GECF") D | 
|---|
| 59 | .;..S ARRAY($$UP,1)="          Note Status: "_$P($$TIUSTAT^PXRMGECK(DFN,"GECF"),":",2)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GECF"),":",3)_"  "_$P($$TIUSTAT^PXRMGECK(DFN,"GECF"),":",4) | 
|---|
| 60 | .I MISSING'="" S ARRAY($$UP,2)=$P($T(T+11),";",3) | 
|---|
| 61 | .S:MISSING[1 ARRAY($$UP,2)=$P($T(T+7),";",3) | 
|---|
| 62 | .S:MISSING[2 ARRAY($$UP,2)=$P($T(T+8),";",3) | 
|---|
| 63 | .S:MISSING[3 ARRAY($$UP,2)=$P($T(T+9),";",3) | 
|---|
| 64 | .;S:MISSING[4 ARRAY($$UP,2)=$P($T(T+10),";",3) | 
|---|
| 65 | ; | 
|---|
| 66 | I MISSING="" S ARRAY($$UP,2)=$P($T(T+5),";",3) | 
|---|
| 67 | ;S MESSAGE=MESSAGE_$P($T(T+6),";",3) | 
|---|
| 68 | ;S MESSAGE=MESSAGE_"^Current GEC Referral Status" | 
|---|
| 69 | ; | 
|---|
| 70 | Q | 
|---|
| 71 | UP() ; | 
|---|
| 72 | S CNT=CNT+1 | 
|---|
| 73 | Q CNT | 
|---|
| 74 | ; | 
|---|
| 75 | T ;TEXT | 
|---|
| 76 | ;;     Social Services, | 
|---|
| 77 | ;;     Nursing Assessment, | 
|---|
| 78 | ;;     Care Recommendations, | 
|---|
| 79 | ;;     Care Coordination | 
|---|
| 80 | ;; | 
|---|
| 81 | ;;Is this Referral Complete? | 
|---|
| 82 | ;;     Social Services | 
|---|
| 83 | ;;     Nursing Assessment | 
|---|
| 84 | ;;     Care Recommendations | 
|---|
| 85 | ;;     Care Coordination | 
|---|
| 86 | ;;The Following Dialogs are Missing: | 
|---|
| 87 | ;; ~~(If you select Yes, the current REFERRAL ~will be completed and any missing ~information cannot be added. | 
|---|
| 88 | ;; ~~If you select No, the current REFERRAL ~will include the addition of missing information.) | 
|---|
| 89 | Q | 
|---|