1 | YSMV1 ;SLC/DKG,SLC/TGA-MOVE CN,MSG CONTINUED ;11/16/90 08:51 ;
|
---|
2 | ;;5.01;MENTAL HEALTH;;Dec 30, 1994
|
---|
3 | ;
|
---|
4 | DTS ; Called by routine YSMV
|
---|
5 | S (YSIDT,K)=0 W !!?10,"PREVIOUS ",YSTL,"(S)",!
|
---|
6 | NIDT ;
|
---|
7 | F S YSIDT=$O(^PTX(YSDFN,YSTY,YSIDT)) Q:'YSIDT S YSUSR=0 D
|
---|
8 | .F S YSUSR=$O(^PTX(YSDFN,YSTY,YSIDT,1,YSUSR)) Q:'YSUSR S YSCD=0 D
|
---|
9 | ..F S YSCD=$O(^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSCD)) Q:'YSCD D
|
---|
10 | ...S K=K+1,YSA(K)=YSTY_U_YSIDT_U_YSUSR_U_YSCD,YSDTM=^(YSCD,0),Y=$P(YSDTM,"."),YSHM=$P(YSDTM,".",2) D ENDD^YSUTL,ENHM^YSUTL ; The naked reference to ^(YSCD,0) was defined in the FOR loop on the previous line.
|
---|
11 | ...W !?8,$J(K,3)," ",YSDT(1)_" at "_YSTM
|
---|
12 | SEL ;
|
---|
13 | I K=1 W ! R " OK? N// ",A:DTIME S YSTOUT='$T,YSUOUT=A["^" S YSQT=YSTOUT I $S(YSTOUT:1,"Nn^"[A:1,1:0) K YSTY Q
|
---|
14 | Q:K<1 G:K>1 SEL1 I "Yy"'[A W !?5," Please enter ""Y"" or ""N"". ""Y"" will move the note, ""N"" will leave it alone",$C(7) G SEL
|
---|
15 | S YSKTY=1,YSTY=$P(YSA(1),U),YSIDT=$P(YSA(1),U,2),YSUSR=$P(YSA(1),U,3),YSCD=$P(YSA(1),U,4) Q
|
---|
16 | SEL1 ;
|
---|
17 | W !!?3,"Select ",YSTL," NUMBER: " R A:DTIME S YSTOUT='$T,YSUOUT=A["^" G:YSTOUT!YSUOUT!(A="") FIN^YSMV G:A>0&(A'>K) SET I A<1!(A>(K)) W $C(7),!!?3,"NUMBER OUT OF RANGE!! ",! G SEL1
|
---|
18 | SET ;
|
---|
19 | S YSTY=$P(YSA(A),U),YSIDT=$P(YSA(A),U,2),YSUSR=$P(YSA(A),U,3),YSCD=$P(YSA(A),U,4) Q
|
---|
20 | ;
|
---|
21 | CLG ; Called by routine YSMV
|
---|
22 | I $G(YSKTY) K ^PTX(YSDFN,YSTY),YSKTY Q
|
---|
23 | Q:'$D(^PTX(YSDFN,YSTY))
|
---|
24 | S (YSHCD,YSCDT,YSHUS,YSUST)=0
|
---|
25 | HCD ;
|
---|
26 | F S YSHCD=$O(^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSHCD)) Q:'YSHCD S YSCDT=YSCDT+1
|
---|
27 | I YSCDT>1 K YSHCD,YSCDT,YSHUS,YSUST,^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSCD) Q
|
---|
28 | K YSHCD,YSCDT F S YSHUS=$O(^PTX(YSDFN,YSTY,YSIDT,1,YSHUS)) Q:'YSHUS S YSUST=YSUST+1
|
---|
29 | I YSUST>1 K YSHUS,YSUST,^PTX(YSDFN,YSTY,YSIDT,1,YSUSR) Q
|
---|
30 | ;
|
---|
31 | SETV ; Called by routine YSMV
|
---|
32 | ; Move of Crisis Notes/Messages into Progress Note File (^GMR(121)).
|
---|
33 | S YSNOTE=$S("CN"[YSTY:"CRISIS NOTE","MS"[YSTY:"MESSAGE",1:"") Q:YSNOTE="" S YSNTE=1 W !!?18,"Moving ",YSNOTE," now.",!
|
---|
34 | S YSDTPN=$P(^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSCD,0),U),DIC="^GMR(121,",DIC(0)="L",DLAYGO=121,X="""N""" D ^DIC Q:Y'>0
|
---|
35 | S DA=+Y,DIE=DIC,DR=".02////"_YSDFN_";.03///"_YSDTPN_";.05////"_YSUSR_";.06///^S X=""Y"";1////"_YSNTE_";2////"_YSUSR_";3////"_YSUSR_";4///NOW;4.1////"_DUZ D ^DIE
|
---|
36 | S DR="200///NOW",DR(2,121.05)=".01///NOW;.02////"_DUZ_";.03////"_$S("CN"[YSTY:22,1:1)_";.04////"_DUZ D ^DIE
|
---|
37 | S %X="^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSCD,1,",%Y="^GMR(121,DA,10," D %XY^%RCR
|
---|
38 | W !!?18,"*** MOVE COMPLETED ***",! K YSHUS,YSUST,YSDTPN,YSNTE,YSNOTE K ^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,YSCD)
|
---|
39 | ;
|
---|
40 | FCK ; Called by routine YSPTX
|
---|
41 | ; Attempts to clear file entries for patient (^PTX).
|
---|
42 | I '$O(^PTX(YSDFN,YSTY,YSIDT,1,YSUSR,1,0)) K ^PTX(YSDFN,YSTY,YSIDT)
|
---|
43 | I '$O(^PTX(YSDFN,YSTY,0)) K ^PTX(YSDFN,YSTY)
|
---|
44 | I $O(^PTX(YSDFN,0))="" S DIK="^PTX(",DA=YSDFN D ^DIK
|
---|
45 | Q
|
---|