| 1 | TIUGR1 ; SLC/MAM - More ID Note Review Screen Actions ;4/12/01
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;**100**;Jun 20, 1997
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 | IDNOTEB(TIUDA) ; Browse Screen Action IN Interdisciplinary Note
 | 
|---|
| 5 |  ; Requires TIUDA
 | 
|---|
| 6 |  ; If editing this module, please keep TIUGR consistent with it.
 | 
|---|
| 7 |  N TITLE,PREFIX,TITLEDA,CANADD,CANATT,ADDED,TIUQUIT,TIUIDDAD
 | 
|---|
| 8 |  ;TIUCHNG is newed in TIURA2; Don't new it here
 | 
|---|
| 9 |  S VALMBCK="R"
 | 
|---|
| 10 |  ; -- If note is addendum, can't attach; say so & quit: --
 | 
|---|
| 11 |  I +^TIU(8925,TIUDA,0)=81 D  G IDNOTEBX
 | 
|---|
| 12 |  . D CANT^TIUGR("A") S TIUCHNG("REFRESH")=1
 | 
|---|
| 13 |  ; -- If note is already an entry of an ID note, unlink it: --
 | 
|---|
| 14 |  S TIUIDDAD=$$HASIDDAD^TIUGBR(TIUDA)
 | 
|---|
| 15 |  I TIUIDDAD D  G IDNOTEBX
 | 
|---|
| 16 |  . D UNLKKID(TIUDA,TIUIDDAD)
 | 
|---|
| 17 |  . I $G(TIUQUIT) S TIUCHNG("REFRESH")=1 Q
 | 
|---|
| 18 |  . S TIUCHNG("RBLD")=1
 | 
|---|
| 19 |  . K VALMHDR ; TIUDA is no longer an ID entry so update header
 | 
|---|
| 20 |  ; -- If user can add an entry to the note, do it & quit: --
 | 
|---|
| 21 |  S CANADD=$$CANDO^TIULP(TIUDA,"ATTACH ID ENTRY")
 | 
|---|
| 22 |  I CANADD D ADDDAD^TIUGEDIT(TIUDA,.ADDED) D  G IDNOTEBX
 | 
|---|
| 23 |  . I 'ADDED S TIUCHNG("REFRESH")=1 Q
 | 
|---|
| 24 |  . S TIUCHNG("RBLD")=1 K VALMHDR
 | 
|---|
| 25 |  ; -- If user can't add entry to note, & attaching note to
 | 
|---|
| 26 |  ;    an existing note is not permitted, say can't add & quit: --
 | 
|---|
| 27 |  ;    -- Note itself has entries: --
 | 
|---|
| 28 |  I 'CANADD,$$HASIDKID^TIUGBR(TIUDA) D  G IDNOTEBX
 | 
|---|
| 29 |  . W !!,$P(CANADD,U,2) D PAUSE^TIUGR
 | 
|---|
| 30 |  . S TIUCHNG("REFRESH")=1
 | 
|---|
| 31 |  ;    -- Note is a possible parent: --
 | 
|---|
| 32 |  S TITLEDA=+^TIU(8925,TIUDA,0)
 | 
|---|
| 33 |  I 'CANADD,$$POSSPRNT^TIULP(TITLEDA) D  G IDNOTEBX
 | 
|---|
| 34 |  . W !!,$P(CANADD,U,2) D PAUSE^TIUGR
 | 
|---|
| 35 |  . S TIUCHNG("REFRESH")=1
 | 
|---|
| 36 |  ; -- See if user can attach note to an existing note: --
 | 
|---|
| 37 |  S CANATT=$$CANDO^TIULP(TIUDA,"ATTACH TO ID NOTE")
 | 
|---|
| 38 |  ; -- If user can attach, tell user not to use Browse:
 | 
|---|
| 39 |  I CANATT W !!,"To attach this note to an ID parent, please exit Browse and try again ",!,"from a Review Screen showing a list of notes.",! H 5 S TIUCHNG("REFRESH")=1 G IDNOTEBX
 | 
|---|
| 40 |  ;    -- If user can't attach, say can't attach: --
 | 
|---|
| 41 |  I 'CANATT W !!,$P(CANATT,U,2) D PAUSE^TIUGR S TIUCHNG("REFRESH")=1
 | 
|---|
| 42 | IDNOTEBX ;
 | 
|---|
| 43 |  ; -- Rebuild browse screen for updated record: --
 | 
|---|
| 44 |  ;    (Review screen is updated from BROWSE^TIURA2)
 | 
|---|
| 45 |  S TIUGDATA=$$IDDATA^TIURECL1(TIUDA) ;may have changed
 | 
|---|
| 46 |  D BLDTMP^TIUBR(TIUDA)
 | 
|---|
| 47 |  Q
 | 
|---|
| 48 |  ;
 | 
|---|
| 49 | UNLKKID(KIDDA,TIUIDDAD,DETACHED) ; Unlink ID entry
 | 
|---|
| 50 |  ; Check if user can unlink, and if so, unlink it.
 | 
|---|
| 51 |  N CANUNLK,UNLINK,MSG,DADDA,TIUQUIT
 | 
|---|
| 52 |  S DETACHED=0
 | 
|---|
| 53 |  W !!,"This note is attached to an interdisciplinary note."
 | 
|---|
| 54 |  ; -- Same users can unlink as can link: --
 | 
|---|
| 55 |  S CANUNLK=$$CANDO^TIULP(KIDDA,"ATTACH TO ID NOTE")
 | 
|---|
| 56 |  I CANUNLK S CANUNLK=$$CANDO^TIULP(TIUIDDAD,"ATTACH ID ENTRY")
 | 
|---|
| 57 |  I 'CANUNLK D  G UNLKKIDX
 | 
|---|
| 58 |  . ;S MSG=$P(CANUNLK,U,2),MSG=$P(MSG,"You may not ATTACH this",2)
 | 
|---|
| 59 |  . ;S MSG=$P(MSG,"to an ID note."),MSG=" You may not DETACH this"_MSG
 | 
|---|
| 60 |  . W !,"You may not detach this note from its interdisciplinary note."
 | 
|---|
| 61 |  . I $$READ^TIUU("EA","Press RETURN to continue...")
 | 
|---|
| 62 |  . S TIUQUIT=1
 | 
|---|
| 63 |  S UNLINK=$$READ^TIUU("Y","Do you want to detach it","NO")
 | 
|---|
| 64 |  I 'UNLINK W !!,"Entry not detached." H 1 S TIUQUIT=1 G UNLKKIDX
 | 
|---|
| 65 |  S DADDA=$P($G(^TMP("TIUR",$J,"IDDATA",KIDDA)),U,3)
 | 
|---|
| 66 |  D UNLINK(KIDDA)
 | 
|---|
| 67 |  I DADDA D UPIDDATA^TIURL1(KIDDA),UPIDDATA^TIURL1(DADDA)
 | 
|---|
| 68 |  W !!,"Entry detached." H 1
 | 
|---|
| 69 |  ;S VALMSG="** Entry detached **" ;4/9/01
 | 
|---|
| 70 |  S TIUCHNG("RBLD")=1,DETACHED=1 ;4/9/01
 | 
|---|
| 71 | UNLKKIDX ;
 | 
|---|
| 72 |  ;I $G(TIUQUIT) S VALMSG="** Entry not detached **",TIUCHNG("REFRESH")=1 Q  ;4/9/01
 | 
|---|
| 73 |  I $G(TIUQUIT) S TIUCHNG("REFRESH")=1 Q  ;4/9/01
 | 
|---|
| 74 |  Q
 | 
|---|
| 75 |  ;
 | 
|---|
| 76 | UNLINK(DA) ; Unlink DA from DADDA
 | 
|---|
| 77 |  N DIE,DR,IDDAD
 | 
|---|
| 78 |  S IDDAD=+$G(^TIU(8925,DA,21))
 | 
|---|
| 79 |  S DIE=8925,DR="2101////@"
 | 
|---|
| 80 |  D ^DIE
 | 
|---|
| 81 |  D AUDLINK(DA,"d",IDDAD)
 | 
|---|
| 82 |  D IDDEL^TIUALRT1(DA)
 | 
|---|
| 83 |  Q
 | 
|---|
| 84 | AUDLINK(TIUDA,ACTION,IDPARENT) ; Audit Attach/Detach Events
 | 
|---|
| 85 |  N DIC,DIE,DA,DR,X,Y,TIUD0,TIUD21,DLAYGO
 | 
|---|
| 86 |  Q:$G(ACTION)']""!(+$G(IDPARENT)'>0)
 | 
|---|
| 87 |  S TIUD0=$G(^TIU(8925,TIUDA,0))
 | 
|---|
| 88 |  S X=""""_"`"_TIUDA_"""",(DIC,DLAYGO)=8925.5,DIC(0)="FLX" D ^DIC Q:+Y'>0
 | 
|---|
| 89 |  S DA=+Y,DIE=DIC
 | 
|---|
| 90 |  S DR="3.01////"_ACTION_";3.02////"_$$NOW^XLFDT
 | 
|---|
| 91 |  S DR=DR_";3.03////"_DUZ_";3.04////"_$P(TIUD0,U,5)
 | 
|---|
| 92 |  S DR=DR_";3.05////"_IDPARENT
 | 
|---|
| 93 |  D ^DIE
 | 
|---|
| 94 |  Q
 | 
|---|