TIUDIRT ; SLC/SBW - IRT interface routines ;4/30/98@15:11:48 ;;1.0;TEXT INTEGRATION UTILITIES;**18**;Jun 20, 1997 SIGNIRT(TIUDA) ; Update SIGNED & REVIEWED fields in IRT Rec N DA,DIC,DR,DIQ,TIUPARM,TIUDATA,TIUDS,TIUSB,TIUDR,TIUB,TIUIRTDA,TIUFLG N TIUQUIT,DFN,TIUDDT,TIU,TIUDPRM,TIUD12,TIUD15 D SETUP(TIUDA) Q:+$G(TIUQUIT) D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,.TIUFLG,$P(TIUDPRM(0),U,12)) Q:'+$G(TIUPARM)!('+$G(TIUIRTDA)) I +$G(TIUFLG) D UPDATE S TIUD12=$G(^TIU(8925,+TIUDA,12)),TIUD15=$G(^TIU(8925,+TIUDA,15)) S (TIUDS,TIUSB,TIUDR,TIUB)="@" D:TIUD15]"" ;If data exist, set variables . ;Review data set here so it exist in case there is no signed data . S TIUDR=$S($P(TIUD12,U,4)=$P(TIUD12,U,9):$P(TIUD15,U),1:$P(TIUD15,U,7)) . I TIUDR]"" S TIUB=$S($P(TIUD12,U,4)=$P(TIUD12,U,9):$P(TIUD15,U,2),1:$P(TIUD15,U,8)) . E S TIUDR="@" . ;Signed data included . S TIUDS=$P(TIUD15,U) . I TIUDS]"" S TIUSB=$P(TIUD15,U,2) . E S TIUDS=TIUDR,TIUSB=TIUB ;If no signed data, set to reviewed data . I '+$P($G(TIUPARM),U,3) D ;Review data not required . . S (TIUDR,TIUB)="@" D SIGUP^DGJSUM(TIUIRTDA,TIUDS,TIUSB,TIUDR,TIUB,TIUPARM) Q UPDTIRT(TIU,TIUDA) ; Update IRT record N DA,DIC,DIQ,DR,TIUPARM,TIUIRTDA,DFN,TIUDDT,TIUQUIT,TIUDPRM D SETUP(TIUDA) Q:+$G(TIUQUIT) D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,"",$P(TIUDPRM(0),U,12)) Q:'+$G(TIUPARM)!('+$G(TIUIRTDA)) UPDATE ; Update the dictation and transcription data in IRT rec N TIUDATA,TIUDD,TIUDB,TIUDT,TIUTB ;Update IRT pointer in TIU record I '+$P($G(^TIU(8925,TIUDA,14)),U,3) S $P(^(14),U,3)=+TIUIRTDA S DR="1202;1307;1302;1201;1209" S DA=+TIUDA,DIC=8925,DIQ="TIUDATA",DIQ(0)="IE" D EN^DIQ1 I $D(TIUDATA) D ;If DS Rec exists, set var for update of IRT Rec . S TIUDD=TIUDATA(8925,TIUDA,1307,"I"),TIUDB=$G(TIUDATA(8925,TIUDA,1202,"I")) . S TIUDT=TIUDATA(8925,TIUDA,1201,"I"),TIUTB=$P($G(^VA(200,+$G(TIUDATA(8925,TIUDA,1302,"I")),0)),U) . I TIUTB]"" S TIUTB="P."_TIUTB . D EDIT^DGJSUM(TIUIRTDA,TIUDD,TIUDB,TIUDT,TIUTB,TIUPARM) E D DCSDEL^DGJSUM(TIUIRTDA,TIUPARM) ;If Document Deleted, IRT deleted Q DELIRT(TIUDA) ; Deletes activity fields in IRT Rec N TIU,TIUPARM,TIUIRTDA,TIUDDT,DFN,TIUDPRM,TIUQUIT D SETUP(TIUDA) Q:+$G(TIUQUIT)!('+$G(TIUIRTDA)) D CHECK^DGJSUM(DFN,TIUDDT,.TIUPARM,.TIUIRTDA,.TIU,.TIUFLG,$P(TIUDPRM(0),U,12)) ; If TIUFLG>0 - IRT rec created in CHECK and don't need to delete I +$G(TIUPARM),+$G(TIUIRTDA),'+$G(TIUFLG) D DCSDEL^DGJSUM(TIUIRTDA,TIUPARM) Q SETUP(TIUDA) ;Set TIU variables for CHECK^DGJSUM N TIUDATE,TIUD0,TIUD14,TIUTYP ; If patch DG*5.3*112 is not in place, suppress IRT call I $T(CHECK^DGJSUM)'[",DGJTYP" S TIUQUIT=1 Q S TIUD0=$G(^TIU(8925,TIUDA,0)) I TIUD0']"" S TIUQUIT=1 Q S TIUD14=$G(^TIU(8925,TIUDA,14)) D DOCPRM^TIULC1(+$G(TIUD0),.TIUDPRM,TIUDA) I '$D(TIUDPRM(0))!(+$P(TIUD0,U,6)) S TIUQUIT=1 Q ; **18** Modified Quit condition to include case where no IRT Deficiency ; is specified (even if the IRT interface is ENABLED) I $S('+$P(TIUDPRM(0),U,11):1,'+$P(TIUDPRM(0),U,12):1,1:0) S TIUQUIT=1 Q S DFN=+$P(TIUD0,U,2),TIUDDT=$P(TIUD0,U,8),TIUIRTDA=+$P(TIUD14,U,3) I '$D(TIU)#2 D GETTIU^TIULD(.TIU,TIUDA) Q