| 1 | SDWLCU6 ;IOFO BAY PINES/DMR - EWL FILE 409.3 CLEANUP - print ;2/15/05 | 
|---|
| 2 | ;;5.3;scheduling;**427**;AUG 13 1993 | 
|---|
| 3 | N XFL,XFL1,XFLG,XDATA,END,SDWLAPTD,I,J,SDWLPD,SDWLPG,SDWLWD,SDWLTP,SDWLTP1 | 
|---|
| 4 | S (IEN,PAT)="",(CC,SDWLPG,SDWLTP)=0,U="^",END="" | 
|---|
| 5 | D NOW^%DTC S Y=% D DD^%DT S SDWLDTP=Y | 
|---|
| 6 | D HD | 
|---|
| 7 | F  S PAT=$O(^SDWL(409.3,"B",PAT)) Q:PAT=""  D  Q:END | 
|---|
| 8 | .S IEN="" F  S IEN=$O(^SDWL(409.3,"B",PAT,IEN)) Q:IEN=""  D  Q:END | 
|---|
| 9 | ..S SDWLX=$G(^SDWL(409.3,IEN,0)),XFLG="",XFL=1,SDWLWD="",SDWLTP1="" | 
|---|
| 10 | ..F I=3,5,XFL S XDATA=$P(SDWLX,U,I) S:I=5&XDATA XFL=XDATA+5 S:'XDATA XFLG=XFLG_I I I=5,XFL=1 D FIX | 
|---|
| 11 | ..I XFLG D | 
|---|
| 12 | ...D HD:$Y+5>IOSL Q:END | 
|---|
| 13 | ...S NN="",NAME="" S NN=$P($G(^SDWL(409.3,IEN,0)),"^",1),NAME=$$GET1^DIQ(2,NN_",",.01,"E") | 
|---|
| 14 | ...S SDWLAPTD=$P(SDWLX,U,16) I SDWLAPTD'="" S Y=SDWLAPTD D DD^%DT S SDWLAPTD=Y | 
|---|
| 15 | ...W !!,IEN,?6,NAME,?40,SDWLAPTD,?54,$P(SDWLX,U,17),?58 | 
|---|
| 16 | ...S XFL="" F I=1:1:3 Q:$E(XFLG,I)=""  S XFL=XFL_$S(XFL'="":",",1:"")_$P("::INST::Type:Team:Postn:Srv/Spec:Clinic",":",$E(XFLG,I)) | 
|---|
| 17 | ...W XFL W:SDWLTP1'="" "/++" | 
|---|
| 18 | ...W:SDWLWD'="" !,?5,SDWLWD | 
|---|
| 19 | ...S CC=CC+1 | 
|---|
| 20 | Q:END | 
|---|
| 21 | IF CC>.5 W !!,"TOTAL null field error EWL entries: "_CC | 
|---|
| 22 | I SDWLTP>.5 W !!,"++ Missing Wait List Type and corresponding field entry (TEAM,POSITION,",!,"     SERVICE/SPECIALTY,CLINIC). Correct corresponding field entries",!,"     and running report again will correct Wait List Type field" | 
|---|
| 23 | D CLINIC | 
|---|
| 24 | W !!,"** End of Report **" | 
|---|
| 25 | Q | 
|---|
| 26 | CLINIC ;Display all clinics in file 409.32 that need to be cleaned up in file 44 in mail message | 
|---|
| 27 | S INST="",CLINIC=0,CC=0 | 
|---|
| 28 | F  S CLINIC=$O(^SDWL(409.32,CLINIC)) Q:'CLINIC  D | 
|---|
| 29 | . S INST=$$GET1^DIQ(44,+$G(^SDWL(409.32,CLINIC,0))_",",3,"I") | 
|---|
| 30 | . I $$GET1^DIQ(4,INST_",",11,"I")'="N"!('$$TF^XUAF4(INST)) D | 
|---|
| 31 | .. S CC=CC+1 | 
|---|
| 32 | .. I CC=1 W !!!,"The following clinics need to have the institution cleaned in file 44:",!! | 
|---|
| 33 | .. W !,?20,$$GET1^DIQ(44,+$G(^SDWL(409.32,CLINIC,0))_",",.01) | 
|---|
| 34 | Q | 
|---|
| 35 | FIX ;fix corrupted Wait List Type piece 5 | 
|---|
| 36 | S XFL1=0,SDWLTP1="" | 
|---|
| 37 | F J=6:1:9 S XDATA=$P(SDWLX,U,J) S:XDATA'="" XFL1=J | 
|---|
| 38 | I 'XFL1 S SDWLTP=SDWLTP+1,SDWLTP1="++" Q | 
|---|
| 39 | I XFL'=1,XFL=XFL1 Q | 
|---|
| 40 | S $P(SDWLX,U,5)=XFL1-5,XFL=XFL1,^SDWL(409.3,IEN,0)=SDWLX | 
|---|
| 41 | S SDWLWD="** WAIT LIST TYPE corrected to value: "_(XFL1-5)_" ("_$P("TEAM;POSITION;SERV/SPCLTY;CLINIC",";",XFL1-5)_")" | 
|---|
| 42 | Q | 
|---|
| 43 | HD ;HDR | 
|---|
| 44 | I SDWLPG>0,$E(IOST,1,2)="C-" S END=$$EOP^ESPUTIL() Q:END | 
|---|
| 45 | S SDWLPG=SDWLPG+1 W:SDWLPG'=1 @IOF | 
|---|
| 46 | W !,?15,"Wait List Key Field 'NULL' Report" | 
|---|
| 47 | S Y=DT D DD^%DT S SDWLPD=Y W ?57,SDWLPD,?72,"Page: ",SDWLPG | 
|---|
| 48 | W !!,"STATION: "_DUZ(2) | 
|---|
| 49 | W !!,"IEN   Patient Name",?42,"Wait Date",?53,"STS",?58,"Null Fields" | 
|---|
| 50 | Q | 
|---|