[613] | 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
|
---|