| 1 | TIUDIRT ; SLC/SBW - IRT interface routines ;4/30/98@15:11:48
 | 
|---|
| 2 |  ;;1.0;TEXT INTEGRATION UTILITIES;**18**;Jun 20, 1997
 | 
|---|
| 3 | SIGNIRT(TIUDA) ; Update SIGNED & REVIEWED fields in IRT Rec
 | 
|---|
| 4 |  N DA,DIC,DR,DIQ,TIUPARM,TIUDATA,TIUDS,TIUSB,TIUDR,TIUB,TIUIRTDA,TIUFLG
 | 
|---|
| 5 |  N TIUQUIT,DFN,TIUDDT,TIU,TIUDPRM,TIUD12,TIUD15
 | 
|---|
| 6 |  D SETUP(TIUDA)
 | 
|---|
| 7 |  Q:+$G(TIUQUIT)
 | 
|---|
| 8 |  D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,.TIUFLG,$P(TIUDPRM(0),U,12))
 | 
|---|
| 9 |  Q:'+$G(TIUPARM)!('+$G(TIUIRTDA))
 | 
|---|
| 10 |  I +$G(TIUFLG) D UPDATE
 | 
|---|
| 11 |  S TIUD12=$G(^TIU(8925,+TIUDA,12)),TIUD15=$G(^TIU(8925,+TIUDA,15))
 | 
|---|
| 12 |  S (TIUDS,TIUSB,TIUDR,TIUB)="@"
 | 
|---|
| 13 |  D:TIUD15]""  ;If data exist, set variables
 | 
|---|
| 14 |  . ;Review data set here so it exist in case there is no signed data
 | 
|---|
| 15 |  . S TIUDR=$S($P(TIUD12,U,4)=$P(TIUD12,U,9):$P(TIUD15,U),1:$P(TIUD15,U,7))
 | 
|---|
| 16 |  . I TIUDR]"" S TIUB=$S($P(TIUD12,U,4)=$P(TIUD12,U,9):$P(TIUD15,U,2),1:$P(TIUD15,U,8))
 | 
|---|
| 17 |  . E  S TIUDR="@"
 | 
|---|
| 18 |  . ;Signed data included
 | 
|---|
| 19 |  . S TIUDS=$P(TIUD15,U)
 | 
|---|
| 20 |  . I TIUDS]"" S TIUSB=$P(TIUD15,U,2)
 | 
|---|
| 21 |  . E  S TIUDS=TIUDR,TIUSB=TIUB ;If no signed data, set to reviewed data
 | 
|---|
| 22 |  . I '+$P($G(TIUPARM),U,3) D  ;Review data not required
 | 
|---|
| 23 |  . . S (TIUDR,TIUB)="@"
 | 
|---|
| 24 |  D SIGUP^DGJSUM(TIUIRTDA,TIUDS,TIUSB,TIUDR,TIUB,TIUPARM)
 | 
|---|
| 25 |  Q
 | 
|---|
| 26 | UPDTIRT(TIU,TIUDA) ; Update IRT record
 | 
|---|
| 27 |  N DA,DIC,DIQ,DR,TIUPARM,TIUIRTDA,DFN,TIUDDT,TIUQUIT,TIUDPRM
 | 
|---|
| 28 |  D SETUP(TIUDA)
 | 
|---|
| 29 |  Q:+$G(TIUQUIT)
 | 
|---|
| 30 |  D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,"",$P(TIUDPRM(0),U,12))
 | 
|---|
| 31 |  Q:'+$G(TIUPARM)!('+$G(TIUIRTDA))
 | 
|---|
| 32 | UPDATE ; Update the dictation and transcription data in IRT rec
 | 
|---|
| 33 |  N TIUDATA,TIUDD,TIUDB,TIUDT,TIUTB
 | 
|---|
| 34 |  ;Update IRT pointer in TIU record
 | 
|---|
| 35 |  I '+$P($G(^TIU(8925,TIUDA,14)),U,3) S $P(^(14),U,3)=+TIUIRTDA
 | 
|---|
| 36 |  S DR="1202;1307;1302;1201;1209"
 | 
|---|
| 37 |  S DA=+TIUDA,DIC=8925,DIQ="TIUDATA",DIQ(0)="IE" D EN^DIQ1
 | 
|---|
| 38 |  I $D(TIUDATA) D  ;If DS Rec exists, set var for update of IRT Rec
 | 
|---|
| 39 |  . S TIUDD=TIUDATA(8925,TIUDA,1307,"I"),TIUDB=$G(TIUDATA(8925,TIUDA,1202,"I"))
 | 
|---|
| 40 |  . S TIUDT=TIUDATA(8925,TIUDA,1201,"I"),TIUTB=$P($G(^VA(200,+$G(TIUDATA(8925,TIUDA,1302,"I")),0)),U)
 | 
|---|
| 41 |  . I TIUTB]"" S TIUTB="P."_TIUTB
 | 
|---|
| 42 |  . D EDIT^DGJSUM(TIUIRTDA,TIUDD,TIUDB,TIUDT,TIUTB,TIUPARM)
 | 
|---|
| 43 |  E  D DCSDEL^DGJSUM(TIUIRTDA,TIUPARM) ;If Document Deleted, IRT deleted
 | 
|---|
| 44 |  Q
 | 
|---|
| 45 | DELIRT(TIUDA) ; Deletes activity fields in IRT Rec
 | 
|---|
| 46 |  N TIU,TIUPARM,TIUIRTDA,TIUDDT,DFN,TIUDPRM,TIUQUIT
 | 
|---|
| 47 |  D SETUP(TIUDA)
 | 
|---|
| 48 |  Q:+$G(TIUQUIT)!('+$G(TIUIRTDA))
 | 
|---|
| 49 |  D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,.TIUFLG,$P(TIUDPRM(0),U,12))
 | 
|---|
| 50 |  ; If TIUFLG>0 - IRT rec created in CHECK and don't need to delete
 | 
|---|
| 51 |  I +$G(TIUPARM),+$G(TIUIRTDA),'+$G(TIUFLG) D DCSDEL^DGJSUM(TIUIRTDA,TIUPARM)
 | 
|---|
| 52 |  Q
 | 
|---|
| 53 | SETUP(TIUDA) ;Set TIU variables for CHECK^DGJSUM
 | 
|---|
| 54 |  N TIUDATE,TIUD0,TIUD14,TIUTYP
 | 
|---|
| 55 |  ; If patch DG*5.3*112 is not in place, suppress IRT call
 | 
|---|
| 56 |  I $T(CHECK^DGJSUM)'[",DGJTYP" S TIUQUIT=1 Q
 | 
|---|
| 57 |  S TIUD0=$G(^TIU(8925,TIUDA,0)) I TIUD0']"" S TIUQUIT=1 Q
 | 
|---|
| 58 |  S TIUD14=$G(^TIU(8925,TIUDA,14))
 | 
|---|
| 59 |  D DOCPRM^TIULC1(+$G(TIUD0),.TIUDPRM,TIUDA)
 | 
|---|
| 60 |  I '$D(TIUDPRM(0))!(+$P(TIUD0,U,6)) S TIUQUIT=1 Q
 | 
|---|
| 61 |  ; **18** Modified Quit condition to include case where no IRT Deficiency
 | 
|---|
| 62 |  ;        is specified (even if the IRT interface is ENABLED)
 | 
|---|
| 63 |  I $S('+$P(TIUDPRM(0),U,11):1,'+$P(TIUDPRM(0),U,12):1,1:0) S TIUQUIT=1 Q
 | 
|---|
| 64 |  S DFN=+$P(TIUD0,U,2),TIUDDT=$P(TIUD0,U,8),TIUIRTDA=+$P(TIUD14,U,3)
 | 
|---|
| 65 |  I '$D(TIU)#2 D GETTIU^TIULD(.TIU,TIUDA)
 | 
|---|
| 66 |  Q
 | 
|---|