1 | SOWKBCD ;BHAM ISC/DLR-DELETE INCOMPLETE CASE OPENING INFO ; 21 Mar 94 / 12:36 PM
|
---|
2 | ;;3.0; Social Work ;**21**;27 Apr 93
|
---|
3 | ;
|
---|
4 | BEG W @IOF
|
---|
5 | W !,"This routine will delete any incomplete or incorrect case data in the Social",!,"Work files (650)(655)(655.2). After correcting the data, file (650)",!,"will be reindexed.",!!
|
---|
6 | S DIR(0)="Y",DIR("B")="NO",DIR("A")="Do you wish to continue",DIR("?")="Enter ""YES"" to delete the data, associated with incomplete cases, from the Case (650), RCH (655), and ASSESSMENT (655.2) files." D ^DIR K DIR,X Q:Y'>0
|
---|
7 | DEV K %ZIS,IOP,ZTSK S SOWKION=ION,%ZIS="QM",%ZIS("B")="" D ^%ZIS K %ZIS I POP S IOP=SOWKION D ^%ZIS K IOP,SOWKION G END
|
---|
8 | I $E(IOST)["C" W *7,!,"PRINTOUT MUST BE SENT TO PRINTER !!",! G DEV
|
---|
9 | K SOWKION I $D(IO("Q")) S ZTDESC="SOCIAL WORK CASE CORRECTION",ZTRTN="ENQ^SOWKBCD"
|
---|
10 | I K IO("Q") D ^%ZTLOAD W:$D(ZTSK) !!,"Task Queued to Print",! K ZTSK,G G END
|
---|
11 | ENQ S REC=0 F CS=0:0 S CS=$O(^SOWK(650,CS)) Q:CS'>0 D
|
---|
12 | .S SWPT=$P(^SOWK(650,CS,0),"^",8) I '$P(^SOWK(650,CS,0),"^")!('$D(SWPT)) S REC=REC+1 D:REC=1 REC1 D CK K ^SOWK(650,CS) Q
|
---|
13 | .I $P(^SOWK(650,CS,0),"^",13)=74 D RCH
|
---|
14 | F X="AC","ACD","AD","AE","B","BS5","CP","O","P","W" K ^SOWK(650,X)
|
---|
15 | S DIK="^SOWK(650," D IXALL^DIK
|
---|
16 | D:REC=0 REC0
|
---|
17 | END ;kills all the variables
|
---|
18 | W:$E(IOST)'["C" @IOF D ^%ZISC K X,X2,SWPT,REC,SOWKFLAG,DFN Q
|
---|
19 | RCH ;check RCH file (655) for entries with CS as the case #
|
---|
20 | S SOWKFLAG=0
|
---|
21 | I '$O(^SOWK(655,SWPT,4,0)) S REC=REC+1 D:REC=1 REC1 S DA=SWPT,DIK="^SOWK(655," D ^DIK
|
---|
22 | I $O(^SOWK(655,SWPT,4,0)) F X2=0:0 S X2=$O(^SOWK(655,SWPT,4,X2)) Q:X2'>0 D
|
---|
23 | .I $D(^SOWK(655,SWPT,4,X2,0)),$P($G(^SOWK(655,SWPT,4,X2,0)),"^",5)="" D DEL
|
---|
24 | .I $P($G(^SOWK(655,SWPT,4,X2,0)),"^",5)=CS S SOWKFLAG=1
|
---|
25 | I 'SOWKFLAG D CK S REC=REC+1 D:REC=1 REC1 S DA=CS,DIK="^SOWK(650," D ^DIK D DIS
|
---|
26 | Q
|
---|
27 | DEL ;deletes home entries without the pointers back to the case file (650)
|
---|
28 | S REC=REC+1 D:REC=1 REC1 S DA=X2,DA(1)=SWPT,DIK="^SOWK(655,"_DA(1)_",4," D ^DIK W !,*7,"<RECORD DELETED>" K DIK
|
---|
29 | I '$O(^SOWK(655,SWPT,4,0)) S REC=REC+1 D:REC=1 REC1 S DA=SWPT,DIK="^SOWK(655," D ^DIK
|
---|
30 | Q
|
---|
31 | REC1 ;
|
---|
32 | U IO W !!!,"These patients were associated with incomplete case openings.",!,"The incomplete records were probably a direct result of exiting, ""^"",",!,"out of the Open Case option at the RCH prompts.",!! Q
|
---|
33 | REC0 ;
|
---|
34 | U IO W !,"There were no incomplete cases located within your case file (650).",!! Q
|
---|
35 | DIS ;displays the Case # and the patients name being deleted from the file
|
---|
36 | U IO S DFN=SWPT D DEM^VADPT W !,*7,"Case #"_$G(CS)_" "_$G(VADM(1))_" was deleted." K DIK,DA D KVA^VADPT K X2 Q
|
---|
37 | CK ;checks to see if there is an Assessment Associated with this case
|
---|
38 | I $P($G(^SOWK(655.2,SWPT,0)),"^",12)=CS S DA=SWPT,DIK="^SOWK(655.2," D ^DIK K DIK Q
|
---|
39 | Q
|
---|