37 lines
3.4 KiB
Mathematica
37 lines
3.4 KiB
Mathematica
SOWKPLC ;B'HAM ISC/SAB,DLR-Routine to print RCH Patient Registry for all cases ; 08 Apr 93 / 9:09 AM [ 07/22/94 2:26 PM ]
|
|
;;3.0; Social Work ;**34,53**;27 Apr 93
|
|
K ^TMP($J)
|
|
BEG S %DT="AEXP",%DT("A")="ALL CASES STARTING FROM: " D ^%DT G:"^"[X CLO G:Y'>0 BEG S SOWKFB=Y
|
|
EN S %DT("A")="ALL CASES ENDING: " D ^%DT G:"^"[X CLO G:Y'>0 EN S SOWKFE=Y W !
|
|
K %ZIS,IOP,ZTSK S SOWKION=ION,%ZIS="QM" D ^%ZIS K %ZIS I POP S IOP=SOWKION D ^%ZIS K IOP,SOWKION G CLO
|
|
K SOWKION I $D(IO("Q")) S ZTDESC="RCH PATIENT REGISTRY FOR ALL CASES",ZTRTN=$S($G(COM):"ENQ^SOWKPLC",1:"SUM^SOWKPLC") F G="COM","SOWKFB","SOWKFE" S:$D(@G) ZTSAVE(G)=""
|
|
I K IO("Q") D ^%ZTLOAD W:$D(ZTSK) !!,"Task Queued to Print",! K G,%DT,CS,DP,I,IOP,LP,MS,P,S,SC,T,X,Y,SOWKFB,SOWKFE,J,Q,ZTSK G CLO Q
|
|
I '$G(COM) G SUM
|
|
ENQ U IO W:$Y @IOF W "RCH PATIENT REGISTRY",!,"COMPLETE: ALL CASES",!
|
|
W !,$E(SOWKFB,4,5)_"/"_$E(SOWKFB,6,7)_"/"_$E(SOWKFB,2,3)_" TO "_$E(SOWKFE,4,5)_"/"_$E(SOWKFE,6,7)_"/"_$E(SOWKFE,2,3),!
|
|
SEA S SWD=SOWKFB-1 F S=0:0 S SWD=$O(^SOWK(650,"O",SWD)) Q:SWD>SOWKFE!'SWD F B=0:0 S B=$O(^SOWK(650,"O",SWD,B)) Q:'B S A=^SOWK(650,B,0) I $P(^SOWK(651,$P(A,"^",13),0),"^",6)["R" S ^TMP($J,$P(^DPT($P(A,"^",8),0),"^"),$P(A,"^"))=$P(A,"^")
|
|
D PRI
|
|
CLO W ! W:$E(IOST)'["C" @IOF D ^%ZISC K SWX,SWXX,B,SWD,PL,HM,^TMP($J),A,%DT,CS,DP,I,IOP,POP,%ZIS,LP,LP1,MS,P,S,SC,T,X,Y,SOWKFB,SOWKFE,J,Q,E,R,Z,COM D KVAR^VADPT,KVA^VADPT D:$D(ZTSK) KILL^%ZTLOAD
|
|
Q
|
|
PRI S I="" F J=0:0 S I=$O(^TMP($J,I)) Q:I="" D PR1 I $G(SWXX) Q
|
|
Q
|
|
PR1 F E=0:0 S E=$O(^TMP($J,I,E)) Q:'E S A=^SOWK(650,E,0),P=$P(A,"^",8) S DFN=P D PID^VADPT6 D @$S($G(COM):"OUT",1:"OUT1") I $G(SWXX) Q
|
|
Q
|
|
OUT U IO F Z=0:0 S Z=$O(^SOWK(655,P,4,Z)) Q:'Z I $P(^SOWK(655,P,4,Z,0),"^",5)=E S HM=$P(^(0),"^"),PL=$P(^(0),"^",2),R=Z
|
|
I $E(IOST)["C",$Y+10>IOSL R !!,"PRESS RETURN TO CONTINUE or '^' TO EXIT: ",SWX:DTIME I SWX["^"!'$T S SWXX=1 Q
|
|
W:$Y+10>IOSL @IOF W !,"NAME: ",$E($P(^DPT(P,0),"^"),1,20),?$X+5,"HOME: "_$E($P(^SOWK(652,HM,0),"^"),1,20) S Y=PL X ^DD("DD") W " PLACED: "_Y,!,"ID#: ",VA("PID"),!,"DOB: " S Y=$P(^DPT(P,0),"^",3) X ^DD("DD") W Y,?$X+5
|
|
W ?$X+5,"WORKER: "_$P(^VA(200,$P(A,"^",3),0),"^") S X=$P(A,"^",7),MS=$S(X=1:"MEDICAL/SURGICAL",X=2:"PSYCHOSIS",X=3:"ORGANIC & SENILE",X=4:"SUBSTANCE ABUSE",X=5:"ALL OTHER",1:"")
|
|
W !,"MS: ",MS,?$X+5,"PRIOR LIVING: " S LP1=$P(^DD(650,10,0),"^",3),LP=$P(A,"^",11),LP=$P(LP1,";",LP) W $P(LP,":",2)
|
|
I $P(A,"^",18) S Y=$P(A,"^",18) X ^DD("DD") W !,"CLOSED: "_Y S X=$P(A,"^",21),DP=$S(X=1:"INDIVIDUAL",X=2:"HOSPITAL",X=3:"OTHER INSTITUTIONAL",X=4:"DEATH",X=5:"TRANSFER",1:"UNKNOWN") W ?$X+5,"DISP: "_DP
|
|
W !,"LEVEL OF CARE: "_$S($P(A,"^",23)=1:"LIGHT",$P(A,"^",23)=2:"MODERATE",1:"HEAVY")
|
|
W !,"RATE: " F Q=0:0 S Q=$O(^SOWK(655,P,4,R,1,Q)) Q:'Q S Y=$P(^SOWK(655,P,4,R,1,Q,0),"^",2) X ^DD("DD") W $P(^SOWK(655,P,4,R,1,Q,0),"^"),?$X+5,"DATE: "_Y,!,?$X+6
|
|
Q
|
|
SUM U IO W:$Y @IOF W "RCH PATIENT REGISTRY",!,"SUMMARY: ALL CASES",!
|
|
W !,$E(SOWKFB,4,5)_"/"_$E(SOWKFB,6,7)_"/"_$E(SOWKFB,2,3)_" TO "_$E(SOWKFE,4,5)_"/"_$E(SOWKFE,6,7)_"/"_$E(SOWKFE,2,3),!!!,"PATIENT NAME",?17,"ID#",?34,"HOME NAME",?55,"SOCIAL WORKER",?76,"OPEN",!
|
|
D SEA
|
|
Q
|
|
OUT1 U IO F Z=0:0 S Z=$O(^SOWK(655,P,4,Z)) Q:'Z I $P(^SOWK(655,P,4,Z,0),"^",5)=E S HM=$P(^SOWK(655,P,4,Z,0),"^")
|
|
I $E(IOST)["C",$Y+5>IOSL R !!,"PRESS RETURN TO CONTINUE or '^' TO EXIT: ",SWX:DTIME I SWX["^"!'$T S SWXX=1 Q
|
|
W:$Y+5>IOSL @IOF W !,$E($P(^DPT(P,0),"^"),1,15),?17,VA("PID"),?34,$E($P(^SOWK(652,HM,0),"^"),1,20),?55,$E($P(^VA(200,$P(A,"^",3),0),"^"),1,20) I '$P(A,"^",18) W ?76,"Y"
|
|
Q
|