1 | TIUBR1 ;SLC/JER - Enter TIU Browse with DFN and TIUDA ;8/21/01 [12/15/04 9:18am]
|
---|
2 | ;;1.0;TEXT INTEGRATION UTILITIES;**31,100,123,176,157**;Jun 20, 1997
|
---|
3 | ; Move LOADSIG, XTRASIG, LOADFOR, LOADREC from TIUBR. **100**
|
---|
4 | ;
|
---|
5 | LOADREC(TIUDA,TIUL,TIUGDATA,TIUGWHOL) ; Load ^TMP
|
---|
6 | ;Requires TIUDA, array TIUL, TIUGDATA
|
---|
7 | ;Optional TIUGWHOL = 1 if we're mid-load for browse, and we're already
|
---|
8 | ; loading the whole note after the selected child,
|
---|
9 | ; so DON'T load the whole note again.
|
---|
10 | N TIUKID,TIUI,CANSEE,TIUPARNT,TIUPNAME,TIUPDATE
|
---|
11 | N TIUGPRNT,TIUPDATA,TIUHASKD
|
---|
12 | S TIUI=0
|
---|
13 | ; ---- If user cannot view TIUDA, say so,
|
---|
14 | ; [load the rest of the ID note], & quit: ----
|
---|
15 | S CANSEE=$S(+$$ISCOMP^TIUBR(TIUDA)>0:1,1:$$CANDO^TIULP(+TIUDA,"VIEW"))
|
---|
16 | I +CANSEE'>0 D Q
|
---|
17 | . S TIUL=+$G(TIUL)+1
|
---|
18 | . S @VALMAR@(TIUL,0)=$P(CANSEE,U,2)
|
---|
19 | . I $P(TIUGDATA,U,2)!$P(TIUGDATA,U,3) D IDREST(TIUDA,.TIUL,TIUGDATA,.TIUGWHOL)
|
---|
20 | ; ---- Load text of TIUDA: ----
|
---|
21 | F S TIUI=$O(^TIU(8925,+TIUDA,"TEXT",TIUI)) Q:+TIUI'>0 D
|
---|
22 | . S TIUL=+$G(TIUL)+1
|
---|
23 | . S @VALMAR@(TIUL,0)=$G(^TIU(8925,+TIUDA,"TEXT",+TIUI,0))
|
---|
24 | ; ---- If TIUDA is a COMPONENT, QUIT
|
---|
25 | Q:+$$ISCOMP^TIUBR(TIUDA)
|
---|
26 | ; ---- If TIUDA **IS** an addendum, load addm signature,
|
---|
27 | ; load original document, quit: ----
|
---|
28 | I +$$ISADDNDM^TIULC1(+TIUDA) D Q
|
---|
29 | . N TIULINE S $P(TIULINE,"=",79)=""
|
---|
30 | . D LOADSIG(TIUDA,.TIUL)
|
---|
31 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
32 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIULINE
|
---|
33 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
34 | . S TIUPARNT=+$P(^TIU(8925,+TIUDA,0),U,6)
|
---|
35 | . S TIUPNAME=$$PNAME^TIULC1(+^TIU(8925,TIUPARNT,0))
|
---|
36 | . S TIUPDATE=+$G(^TIU(8925,TIUPARNT,13))
|
---|
37 | . S TIUPDATE=$$DATE^TIULS(TIUPDATE,"MM/DD/YY")
|
---|
38 | . S TIUPDATA=$$IDDATA^TIURECL1(TIUPARNT)
|
---|
39 | . S TIUHASKD=$P(TIUPDATA,U,2),TIUGPRNT=+$P(TIUPDATA,U,3)
|
---|
40 | . S TIUL=+$G(TIUL)+1
|
---|
41 | . I 'TIUHASKD,'TIUGPRNT D
|
---|
42 | . . S @VALMAR@(TIUL,0)=" --- Original Document ---"
|
---|
43 | . . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
44 | . . S TIUL=+$G(TIUL)+1
|
---|
45 | . . S @VALMAR@(TIUL,0)=TIUPDATE_" "_TIUPNAME_":"
|
---|
46 | . . D LOADREC(TIUPARNT,.TIUL,TIUGDATA)
|
---|
47 | . I TIUHASKD D
|
---|
48 | . . S @VALMAR@(TIUL,0)=" --- Addended Interdisciplinary Note ---"
|
---|
49 | . . D LOADID^TIUGBR(TIUPARNT,.TIUL,TIUPDATA,1)
|
---|
50 | . I TIUGPRNT D
|
---|
51 | . . S @VALMAR@(TIUL,0)=" --- Original Interdisciplinary Entry ---"
|
---|
52 | . . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
53 | . . S TIUL=+$G(TIUL)+1
|
---|
54 | . . S @VALMAR@(TIUL,0)=TIUPDATE_" "_TIUPNAME_":"
|
---|
55 | . . D LOADREC(TIUPARNT,.TIUL,TIUGDATA)
|
---|
56 | . . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
57 | . . S TIUL=+$G(TIUL)+1
|
---|
58 | . . S @VALMAR@(TIUL,0)=" --- Interdisciplinary Note ---"
|
---|
59 | . . D LOADID^TIUGBR(TIUGPRNT,.TIUL,TIUPDATA,1)
|
---|
60 | ; ---- Load components of TIUDA: ----
|
---|
61 | S TIUKID=0
|
---|
62 | F S TIUKID=$O(^TIU(8925,"DAD",+TIUDA,TIUKID)) Q:+TIUKID'>0 D
|
---|
63 | . I +$$ISADDNDM^TIULC1(TIUKID)'>0 D LOADREC(TIUKID,.TIUL,TIUGDATA)
|
---|
64 | ; ---- Load signature of TIUDA if TIUDA is not addm
|
---|
65 | ; or comp: ----
|
---|
66 | I '$$ISCOMP^TIUBR(TIUDA) D LOADSIG(TIUDA,.TIUL)
|
---|
67 | ; ---- Load addenda of TIUDA: ----
|
---|
68 | S TIUKID=0
|
---|
69 | F S TIUKID=$O(^TIU(8925,"DAD",+TIUDA,TIUKID)) Q:+TIUKID'>0 D
|
---|
70 | . ; If an addendum has focus, don't show it again unless
|
---|
71 | . ; loading whole ID note:
|
---|
72 | . I '$G(TIUGWHOL),+TIUKID=+$G(^TMP("TIU FOCUS",$J)) Q
|
---|
73 | . I +$$ISADDNDM^TIULC1(TIUKID) D LOADADD^TIUBR(TIUKID,.TIUL)
|
---|
74 | ; ---- Load the rest of the ID note display: ----
|
---|
75 | I $P(TIUGDATA,U,2)!$P(TIUGDATA,U,3) D IDREST(TIUDA,.TIUL,TIUGDATA,.TIUGWHOL)
|
---|
76 | Q
|
---|
77 | ;
|
---|
78 | IDREST(TIUDA,TIUL,TIUGDATA,TIUGWHOL) ; Load rest of ID note display
|
---|
79 | N IDDAD
|
---|
80 | S IDDAD=+$P(TIUGDATA,U,3)
|
---|
81 | ; ---- If Browsed Record is an ID child, & this cycle hasn't begun
|
---|
82 | ; loading the whole note, then load the whole ID Note after
|
---|
83 | ; the browsed child: ----
|
---|
84 | I IDDAD,'$G(TIUGWHOL) D Q
|
---|
85 | . S TIUGWHOL=1
|
---|
86 | . N TIULINE S $P(TIULINE,"=",79)=""
|
---|
87 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
88 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIULINE
|
---|
89 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
90 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=" --- Interdisciplinary Note ---"
|
---|
91 | . D LOADID^TIUGBR(IDDAD,.TIUL,TIUGDATA,TIUGWHOL)
|
---|
92 | ; ---- If Browsed Record is an ID parent, & this cycle has
|
---|
93 | ; just loaded the parent entry, OR
|
---|
94 | ; If Browsed Record is an ID child, & this cycle has begun
|
---|
95 | ; loading the whole ID note, and is currently loading the first
|
---|
96 | ; entry of the whole note,
|
---|
97 | ; Then load kids: ----
|
---|
98 | I $P(TIUGDATA,U,2)&(TIUDA=+TIUGDATA)!(IDDAD&$G(TIUGWHOL)&(TIUDA=IDDAD)) D
|
---|
99 | . D LOADKIDS^TIUBR(TIUDA,.TIUL,TIUGDATA,$G(TIUGWHOL)) K TIUGWHOL
|
---|
100 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
101 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=" << Interdisciplinary Note - End >>"
|
---|
102 | Q
|
---|
103 | EXSTNOTE(DFN,TIUDA) ; Sample/display existing notes
|
---|
104 | N TIU,TIUPRM0,TIUPRM1,TIUSEE,TIUOUT,TIUY,TIUQUIT
|
---|
105 | D SETPARM^TIULE
|
---|
106 | Q:TIUDA'>0
|
---|
107 | D GETTIU^TIULD(.TIU,+TIUDA)
|
---|
108 | I $D(TIU) D
|
---|
109 | . S TIUSEE=$$CANDO^TIULP(TIUDA,"VIEW")
|
---|
110 | . I 'TIUSEE D Q
|
---|
111 | . . W !!,$C(7),$P(TIUSEE,U,2),!
|
---|
112 | . . W:$$READ^TIUU("FOA","Press RETURN to continue...") ""
|
---|
113 | . D EN^VALM("TIU BROWSE FOR CLINICIAN")
|
---|
114 | . K ^TMP("TIUVIEW",$J)
|
---|
115 | . S:$D(TIUQUIT) TIUOUT=1
|
---|
116 | Q
|
---|
117 | ;
|
---|
118 | LOADSIG(DA,TIUL) ; Get signature and co-signature blocks
|
---|
119 | N DIC,DIQ,DR,TIUSIG,TIUESIG1,TIUESIG2,TIUSIG1,TIUSIG2,TIUS1,TIUS2
|
---|
120 | N TIUSNM,TIUSTTL,TIUS1DT,TIUS2DT,TIUSDT
|
---|
121 | Q:'$D(^TIU(8925,DA,15))
|
---|
122 | S DIC=8925,DIQ="TIUSIG(",DIQ(0)="IE",DR="1204;1208;1501:1505;1507:1513;1601:1605"
|
---|
123 | D EN^DIQ1 I '$D(TIUSIG) Q
|
---|
124 | S TIUS1=$S(TIUSIG(8925,DA,1505,"I")="E":"/es/ ",TIUSIG(8925,DA,1505,"I")="C":"/s/ ",1:"")_$G(TIUSIG(8925,DA,1503,"E"))
|
---|
125 | S TIUS2=$S(TIUSIG(8925,DA,1511,"I")="E":"/es/ ",TIUSIG(8925,DA,1511,"I")="C":"/s/ ",1:"")_$G(TIUSIG(8925,DA,1509,"E"))
|
---|
126 | S TIUESIG1=$G(TIUSIG(8925,DA,1204,"I"))
|
---|
127 | S TIUSIG1=$G(TIUSIG(8925,DA,1502,"I"))
|
---|
128 | S TIUS1DT=$S(+$G(TIUSIG(8925,DA,1501,"I")):"Signed: "_$$DATE^TIULS($G(TIUSIG(8925,DA,1501,"I")),"MM/DD/CCYY HR:MIN"),1:"")
|
---|
129 | S TIUESIG2=$G(TIUSIG(8925,DA,1208,"I"))
|
---|
130 | S TIUS2DT=$S(+$G(TIUSIG(8925,DA,1507,"I")):"Cosigned: "_$$DATE^TIULS($G(TIUSIG(8925,DA,1507,"I")),"MM/DD/CCYY HR:MIN"),1:"")
|
---|
131 | S TIUSIG2=$G(TIUSIG(8925,DA,1508,"I"))
|
---|
132 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=" "
|
---|
133 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUS1
|
---|
134 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=$G(TIUSIG(8925,DA,1504,"E"))
|
---|
135 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUS1DT
|
---|
136 | I $G(TIUSIG(8925,DA,1505,"I"))="C" D
|
---|
137 | . N TIUONCH
|
---|
138 | . S TIUONCH=$G(TIUSIG(8925,DA,1512,"E")) I '$L(TIUONCH) S TIUONCH=$G(TIUSIG(8925,DA,1513,"E"))
|
---|
139 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)="Marked signed on chart by: "_TIUONCH
|
---|
140 | I TIUSIG1]"",(TIUSIG1'=TIUESIG1) D LOADFOR(TIUSIG1,TIUESIG1,.TIUL)
|
---|
141 | I +$G(TIUSIG(8925,DA,1507,"I"))>0 D
|
---|
142 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=" "
|
---|
143 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUS2
|
---|
144 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=$G(TIUSIG(8925,DA,1510,"E"))
|
---|
145 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUS2DT
|
---|
146 | . I $G(TIUSIG(8925,DA,1511,"I"))="C" D
|
---|
147 | . . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)="Marked cosigned on chart by: "_$G(TIUSIG(8925,DA,1513,"E"))
|
---|
148 | I TIUSIG2]"",(TIUSIG2'=TIUESIG2) D LOADFOR(TIUSIG2,TIUESIG2,.TIUL)
|
---|
149 | XTRA I +$O(^TIU(8925.7,"B",DA,0)) D XTRASIG(DA,.TIUL)
|
---|
150 | I +$G(TIUSIG(8925,DA,1601,"I")) D
|
---|
151 | . N TIUMODE
|
---|
152 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=""
|
---|
153 | . S TIUL=+$G(TIUL)+1
|
---|
154 | . S @VALMAR@(TIUL,0)=$$DATE^TIULS(TIUSIG(8925,DA,1601,"I"),"MM/DD/CCYY HR:MIN")_" AMENDMENT FILED:"
|
---|
155 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)="",TIUL=+$G(TIUL)+1
|
---|
156 | . S TIUMODE=$S(+$G(TIUSIG(8925,DA,1603,"I")):"/es/ ",1:" /s/ ")
|
---|
157 | . S @VALMAR@(TIUL,0)=TIUMODE_$S($G(TIUSIG(8925,DA,1604,"E"))]"":$G(TIUSIG(8925,DA,1604,"E")),1:$G(TIUSIG(8925,DA,1602,"E")))
|
---|
158 | . I $L($G(TIUSIG(8925,DA,1605,"E"))) D
|
---|
159 | . . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=$G(TIUSIG(8925,DA,1605,"E"))
|
---|
160 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=$P($G(TIUPRM1),U,5)
|
---|
161 | Q
|
---|
162 | XTRASIG(TIUDA,TIUL) ; Load additional signature blocks
|
---|
163 | N TIUI,DA,DR,DIC,DIQ,TIUXTRA S TIUI=0
|
---|
164 | S DIC="^TIU(8925.7,",DIQ="TIUXTRA"
|
---|
165 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=" "
|
---|
166 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)="Receipt Acknowledged By:"
|
---|
167 | F S TIUI=$O(^TIU(8925.7,"B",TIUDA,TIUI)) Q:+TIUI'>0 D
|
---|
168 | . N TIUX,TIUSGNR,TIUSDT
|
---|
169 | . S DA=TIUI,DR=".03:.08",DIQ(0)="IE" D EN^DIQ1 Q:+$D(TIUXTRA)'>9
|
---|
170 | . S TIUSGNR=$S($L($G(TIUXTRA(8925.7,DA,.06,"E"))):"/es/ "_$G(TIUXTRA(8925.7,DA,.06,"E")),1:" "_$G(TIUXTRA(8925.7,DA,.03,"E")))
|
---|
171 | . S TIUSDT=$S(+$G(TIUXTRA(8925.7,DA,.04,"I")):$$DATE^TIULS(TIUXTRA(8925.7,DA,.04,"I"),"MM/DD/CCYY HR:MIN"),1:"* AWAITING SIGNATURE *")
|
---|
172 | . S TIUX=$$SETSTR^VALM1(TIUSDT,$G(TIUX),1,38)
|
---|
173 | . S TIUX=$$SETSTR^VALM1(TIUSGNR,$G(TIUX),25,55)
|
---|
174 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUX,TIUX=""
|
---|
175 | . S TIUX=$$SETSTR^VALM1($G(TIUXTRA(8925.7,DA,.07,"E")),$G(TIUX),30,50)
|
---|
176 | . S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUX
|
---|
177 | . I $G(TIUXTRA(8925.7,DA,.05,"I")),$G(TIUXTRA(8925.7,DA,.05,"I"))'=$G(TIUXTRA(8925.7,DA,.03,"I")) D
|
---|
178 | . . N TIUFOR
|
---|
179 | . . S TIUX=""
|
---|
180 | . . S TIUFOR="for "_$P($G(TIUXTRA(8925.7,DA,.03,"E")),",",2)_" "_$P($G(TIUXTRA(8925.7,DA,.03,"E")),",")
|
---|
181 | . . S TIUX=$$SETSTR^VALM1(TIUFOR,$G(TIUX),26,55)
|
---|
182 | . . S TIUL=TIUL+1,@VALMAR@(TIUL,0)=TIUX
|
---|
183 | Q
|
---|
184 | LOADFOR(TIUS1,TIUES1,TIUL) ; Apply "for" block
|
---|
185 | N TIUESN1,TIUEST1,TIUFORN,TIUFORT
|
---|
186 | S TIUESN1="for "_$$SIGNAME^TIULS(TIUES1),TIUEST1=$$SIGTITL^TIULS(TIUES1)
|
---|
187 | I +$G(TIUS1),($G(TIUS1)'=$G(TIUES1)) S TIUFORN=$$SETSTR^VALM1(TIUESN1,$G(TIUFORN),1,50),TIUFORT=$$SETSTR^VALM1(TIUEST1,$G(TIUFORT),1,50)
|
---|
188 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUFORN
|
---|
189 | S TIUL=+$G(TIUL)+1,@VALMAR@(TIUL,0)=TIUFORT
|
---|
190 | Q
|
---|