1 | TIUADD ; SLC/JER - Enter/Edit an addendum online ;2/13/02
|
---|
2 | ;;1.0;TEXT INTEGRATION UTILITIES;**3,88,100,112**;Jun 20, 1997
|
---|
3 | ; 2/3: Update TEXTEDIT from TIUEDIT to TIUEDI4
|
---|
4 | ADDENDUM(TIUDA,TIUADD,TIUCHNG,TIUNOASK) ; Control branching
|
---|
5 | N TIUY,TIUEDIT,TIUDADD K ^TMP("TIUADD",$J)
|
---|
6 | I '$D(TIUPRM0)!'$D(TIUPRM1) D SETPARM^TIULE
|
---|
7 | S TIUCHNG("ADDM")=1
|
---|
8 | ; -- Get list of existing addenda, edit existing one --
|
---|
9 | D ADDLIST(.TIUY,TIUDA)
|
---|
10 | I +$D(TIUY),+$D(@TIUY) D G:$D(DIRUT) ADDENX
|
---|
11 | . W !
|
---|
12 | . S TIUEDIT=+$$READ^TIUU("YO","Do you wish to EDIT an existing ADDENDUM","YES")
|
---|
13 | . I +TIUEDIT D EDIT(TIUY) S TIUADD=1
|
---|
14 | G:+$G(TIUADD) ADDENX
|
---|
15 | ; -- Create new addendum to TIUDA: --
|
---|
16 | I +$P($G(^TIU(8925,+TIUDA,0)),U,6)'>0 D Q:$D(DIROUT)!(+TIUDADD'>0)
|
---|
17 | . S TIUDADD=$$CANDO^TIULP(TIUDA,"MAKE ADDENDUM")
|
---|
18 | . I '+TIUDADD D Q
|
---|
19 | . . W !!,$C(7),$P(TIUDADD,U,2),!
|
---|
20 | . . I $$READ^TIUU("EA","Press RETURN to continue...")
|
---|
21 | . I +TIUDADD D Q:$D(DIROUT)
|
---|
22 | . . I +$G(TIUNOASK)'>0,'+$$READ^TIUU("YO","Do you wish to ADD a new ADDENDUM","NO") Q
|
---|
23 | . . D ADD(TIUDA,.TIUCHNG)
|
---|
24 | . . ; -- Update ADDENDED? if browsing ID Note
|
---|
25 | . . I TIUCHNG,$P($G(TIUGDATA),U,2) K VALMHDR
|
---|
26 | I +$P(^TIU(8925,+TIUDA,0),U,6)>0 D
|
---|
27 | . W !!,$C(7)," You may not make an ADDENDUM to an ADDENDUM.",!
|
---|
28 | . I $$READ^TIUU("EA","Press RETURN to continue...")
|
---|
29 | ADDENX ;Exit for ADDENDUM
|
---|
30 | K ^TMP("TIUADD",$J)
|
---|
31 | ;I $D(VALMAR),$$READ^TIUU("EA","Press RETURN to continue...")
|
---|
32 | Q
|
---|
33 | EDIT(TIUY) ;Edit existing addendum
|
---|
34 | N TIUED,TIUDA,DA,DIC,DIE,TIUDAUTH,TIUPT,TIURDOC,DR,X,Y,TIUCNT
|
---|
35 | S TIUCNT=0 F S TIUCNT=$O(@TIUY@(TIUCNT)) Q:TIUCNT'>0 D Q:$D(DIROUT)
|
---|
36 | . N TIUQUIT
|
---|
37 | . S TIUDA=+$G(@TIUY@(TIUCNT))
|
---|
38 | . D GETTIU^TIULD(.TIU,+TIUDA)
|
---|
39 | . W !!,"Displaying Addendum #",TIUCNT
|
---|
40 | . D EN^VALM("TIU EDIT ADDENDUM") Q:$D(DIROUT)
|
---|
41 | Q
|
---|
42 | EDADD ; Edit action
|
---|
43 | N DA,DIC,DIE,DLAYGO,DIWESUB,TIUDAUTH,TIUMD,TIUPT,TIUECOS,TIUXINI,DR,X,Y
|
---|
44 | N TIUDAD,TIUD0,TIUD12,TIUD13,TIUD14,TIUQUIT,TIUTYP,TIUT0,TIU
|
---|
45 | K TIUBY,TIUCANED
|
---|
46 | S TIUCANED=$$CANDO^TIULP(TIUDA,"EDIT RECORD")
|
---|
47 | I +TIUCANED'>0 D Q
|
---|
48 | . W !!,$P(TIUCANED,U,2)
|
---|
49 | . I $$READ^TIUU("EA","Press RETURN to continue...") ; pause
|
---|
50 | S TIUD0=$G(^TIU(8925,+TIUDA,0)),TIUD12=$G(^(12)),TIUD13=$G(^(13))
|
---|
51 | S TIUD14=$G(^TIU(8925,+TIUDA,14))
|
---|
52 | S TIUDAD=+$P($G(^TIU(8925,+TIUDA,0)),U,6)
|
---|
53 | S DA=+TIUDA
|
---|
54 | W !!,"Editing ADDENDUM"
|
---|
55 | S TIUTYP=+$G(^TIU(8925,+DA,0)),TIUT0=$G(^TIU(8925.1,+TIUTYP,0))
|
---|
56 | S TIUTYP(1)="1^"_+TIUTYP_U_$P(TIUT0,U,3)_U
|
---|
57 | S TIUMD=$$ISA^USRLM(+$G(DUZ),"PROVIDER")
|
---|
58 | S TIUPT=$P($G(^DPT(+$P(TIUD0,U,2),0)),U)
|
---|
59 | S DIWESUB="Patient: "_TIUPT
|
---|
60 | S DR=$$GETTMPL^TIUEDI1(+$P(^TIU(8925,+TIUDAD,0),U))
|
---|
61 | D GETTIU^TIULD(.TIU,TIUDAD)
|
---|
62 | ; -- Do DIE; get text, release, verify: --
|
---|
63 | D ADDDIE(DA,DR,TIUDAD)
|
---|
64 | I '$D(^TIU(8925,+DA,0)) S TIUCHNG=0,TIUCHNG("DELETE")=1 Q
|
---|
65 | ; -- Update status, visit type, visit location: --
|
---|
66 | S DR=".05///"_$$STATUS^TIULC(DA)_";.13////"_$P($G(TIU("VSTR")),";",3)_";1211////"_$P($G(TIU("VLOC")),U),DIE=8925 D ^DIE
|
---|
67 | ; -- Set TIUCHNG: e.g. TIUCHNG = 2^addmIFN (2 for entered/edited text);
|
---|
68 | ; TIUCHNG("EXIST") for edited EXISTING not new addm
|
---|
69 | S TIUCHNG=2_"^"_+$G(DA),TIUCHNG("EXIST")=1,VALMBCK="Q"
|
---|
70 | ; -- Sign, print: --
|
---|
71 | I +$P(TIUPRM0,U,2) D
|
---|
72 | . N TIUSIGN S TIUSIGN=$$CANDO^TIULP(DA,"SIGNATURE")
|
---|
73 | . I '+TIUSIGN D Q
|
---|
74 | . . I +$$ISA^USRLM(+$G(DUZ),"TRANSCRIPTIONIST") Q
|
---|
75 | . . W !,$C(7),$P(TIUSIGN,U,2)
|
---|
76 | . . I '$D(VALMAR),$$READ^TIUU("EA","Press RETURN to continue...")
|
---|
77 | . I +TIUSIGN D EDSIG^TIURS(DA)
|
---|
78 | . I +$P($G(TIUDPRM(0)),U,8) D PRINT^TIUEPRNT(DA)
|
---|
79 | ; NOIS LOU-0598-40899
|
---|
80 | I $G(TIUQUIT),+$$EMPTYDOC^TIULF(DA) D DELETE^TIUEDIT(DA) S TIUCHNG=0,TIUCHNG("DELETE")=1 H 2 Q
|
---|
81 | Q
|
---|
82 | ADD(TIUDA,TIUCHNG) ;Add new addendum
|
---|
83 | N DA,DIC,DIE,DLAYGO,DIWESUB,DR,TIUDAUTH,TIUMD,TIUPT,TIUECOS,TIUXINI,X,Y
|
---|
84 | N TIUD0,TIUDV,TIUD12,TIUD13,TIUD14,TIUTYP,TIUT0,TIU,TIUFPRIV,TIUQUIT
|
---|
85 | N LINENO,EXPANDED
|
---|
86 | S TIUFPRIV=1
|
---|
87 | S TIUD0=$G(^TIU(8925,+TIUDA,0)),TIUD12=$G(^(12)),TIUD13=$G(^(13))
|
---|
88 | S TIUD14=$G(^TIU(8925,+TIUDA,14)),TIUDV=$P(TIUD0,U,3)
|
---|
89 | S LINENO=+$O(^TMP("TIUR",$J,"IEN",TIUDA,0))
|
---|
90 | I LINENO,$D(^TMP("TIUR",$J,"EXPAND",LINENO)) S EXPANDED=1
|
---|
91 | I '$G(EXPANDED),$$HASIDKID^TIUGBR(TIUDA) W !!," You are addending an interdisciplinary note. Your addendum will be added to",!,"the parent entry of the note." H 2
|
---|
92 | S (DIC,DLAYGO)=8925,DIC(0)="L",X=""""_"`"_$$ADDPTR_""""
|
---|
93 | D ^DIC
|
---|
94 | I +Y>0 S DA=+Y D
|
---|
95 | . W !!,"Adding ADDENDUM"
|
---|
96 | . S DIE="^TIU(8925,"
|
---|
97 | . S DR=".03////"_TIUDV_";.04////"_+$$ADDCLASS_";.05////3;.06////"_TIUDA
|
---|
98 | . S DR=DR_";1405////^S X=$P(TIUD14,U,5)"
|
---|
99 | . D ^DIE
|
---|
100 | . S TIUTYP=+$G(^TIU(8925,+DA,0)),TIUT0=$G(^TIU(8925.1,+TIUTYP,0))
|
---|
101 | . S TIUTYP(1)="1^"_+TIUTYP_U_$P(TIUT0,U,3)_U
|
---|
102 | . S TIUMD=$$ISA^USRLM(+$G(DUZ),"PROVIDER")
|
---|
103 | . S TIUPT=$P($G(^DPT(+$P(TIUD0,U,2),0)),U)
|
---|
104 | . S DIWESUB="Patient: "_TIUPT
|
---|
105 | . S DR=$$GETTMPL^TIUEDI1(+$P(^TIU(8925,+TIUDA,0),U))
|
---|
106 | . D GETTIU^TIULD(.TIU,TIUDA)
|
---|
107 | . D ADDDIE(DA,DR,TIUDA) I '$D(^TIU(8925,+DA,0)) S TIUCHNG=0,TIUCHNG("DELETE")=1 Q
|
---|
108 | . S DR=".05///"_$$STATUS^TIULC(DA),DIE=8925 D ^DIE
|
---|
109 | . S TIUCHNG=2_"^"_+$G(DA)
|
---|
110 | . I +$P(TIUPRM0,U,2) D
|
---|
111 | . . N TIUSIGN S TIUSIGN=$$CANDO^TIULP(DA,"SIGNATURE")
|
---|
112 | . . I '+TIUSIGN D Q
|
---|
113 | . . . W !,$C(7),$P(TIUSIGN,U,2)
|
---|
114 | . . . I '$D(VALMAR),$$READ^TIUU("EA","Press RETURN to continue...")
|
---|
115 | . . I +TIUSIGN D EDSIG^TIURS(DA)
|
---|
116 | . I +$P($G(TIUDPRM(0)),U,8) D PRINT^TIUEPRNT(DA)
|
---|
117 | . I $G(TIUQUIT) D DELETE^TIUEDIT(DA) S TIUCHNG=0,TIUCHNG("DELETE")=1 Q
|
---|
118 | Q
|
---|
119 | ADDPTR() ; Get record # of ADDENDUM in 8925.1
|
---|
120 | N DIC,X,Y,TIUFPRIV S TIUFPRIV=1
|
---|
121 | S DIC=8925.1,DIC(0)="FMX",X="ADDENDUM"
|
---|
122 | S DIC("S")="I $P($G(^TIU(8925.1,+Y,0)),U,4)=""DOC"""
|
---|
123 | D ^DIC K DIC("S")
|
---|
124 | Q +Y
|
---|
125 | ADDCLASS() ; Get record # of ADDENDUM Document Class in 8925.1
|
---|
126 | N DIC,X,Y,TIUFPRIV S TIUFPRIV=1
|
---|
127 | S DIC=8925.1,DIC(0)="FMX",X="ADDENDUM"
|
---|
128 | S DIC("S")="I $P($G(^TIU(8925.1,+Y,0)),U,4)=""DC"""
|
---|
129 | D ^DIC K DIC("S")
|
---|
130 | Q +Y
|
---|
131 | ADDDIE(DA,DR,TIUDA) ; Call DIE to conduct dialog
|
---|
132 | N TIUREL,TIUD0,TIUD12,TIUD13,TIUD14,DTOUT,Y,DWPK
|
---|
133 | S DIE=8925 D ^DIE
|
---|
134 | I $D(Y)!($D(DTOUT)) S TIUQUIT=1
|
---|
135 | D:+$G(TIUQUIT) SEND^TIUALRT(DA)
|
---|
136 | I '+$G(TIUQUIT) D
|
---|
137 | . D TEXTEDIT^TIUEDI4(DA)
|
---|
138 | . I $$EMPTYDOC^TIULF(DA) D DELETE^TIUEDIT(DA,0) Q
|
---|
139 | . ; -- Not clear why I need these nodes 0,12,13,14: --
|
---|
140 | . S TIUD0=$G(^TIU(8925,+DA,0)),TIUD12=$G(^(12)),TIUD13=$G(^(13))
|
---|
141 | . S TIUD14=$G(^TIU(8925,+DA,14))
|
---|
142 | . ; Execute RELEASE Logic
|
---|
143 | . D RELEASE^TIUT(DA) S TIUREL=""
|
---|
144 | . ; Execute VERIFY Logic
|
---|
145 | . D VERIFY^TIUT(DA)
|
---|
146 | . ; Send Addendum Alert
|
---|
147 | . D SENDADD^TIUALRT(DA)
|
---|
148 | Q
|
---|
149 | ADDLIST(Y,TIUDA) ; Get list of addenda for a record
|
---|
150 | N TIUI,TIUCNT S (TIUCNT,TIUI)=0 K ^TMP("TIUADD",$J)
|
---|
151 | F S TIUI=$O(^TIU(8925,"DAD",TIUDA,TIUI)) Q:+TIUI'>0 D
|
---|
152 | . Q:+$$ISADDNDM^TIULC1(TIUI)'>0
|
---|
153 | . Q:+$$CANDO^TIULP(TIUI,"EDIT RECORD")'>0
|
---|
154 | . S TIUCNT=TIUCNT+1,^TMP("TIUADD",$J,TIUCNT)=TIUI
|
---|
155 | I $D(^TMP("TIUADD",$J)) S Y=$NA(^TMP("TIUADD",$J))
|
---|
156 | Q
|
---|