- TIUEDI2 ; SLC/JER - Additional Edit Code ; 7-MAR-2000 10:57:50
- ;;1.0;TEXT INTEGRATION UTILITIES;**1,89,299**;Jun 20, 1997;Build 3
- ;Per VHA Directive 2004-038, this routine should not be modified.
- GETENTRY(TIUTYP) ; Get Entry Action, enforce inheritance
- N TIUDAD,TIUY S TIUDAD=0
- S TIUY=$G(^TIU(8925.1,+TIUTYP,4.6))
- I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
- I +TIUDAD S TIUY=$$GETENTRY(TIUDAD)
- Q TIUY
- GETEXIT(TIUTYP) ; Get Validation method, enforce enheritance
- N TIUDAD,TIUY S TIUDAD=0
- S TIUY=$G(^TIU(8925.1,+TIUTYP,4.7))
- I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
- I +TIUDAD S TIUY=$$GETEXIT(TIUDAD)
- Q TIUY
- EXSTNOTE(DFN) ; Sample/display existing notes
- N TIUSMPL,TIUTOTL,TIUEDT,TIULDT,TIUPRMT,TIURVW,TIUPNOUN,TIUSEE,TIUOUT
- N TIUA,TIUI,TIUJ,TIULAST,TIULIST,TIUREC,TIURTN,TIUSTOP,TIUY,TIUZ,TIUQUIT
- I '$D(TIUPRM0) D SETPARM^TIULE
- I '$D(TIUPREF) S TIUPREF=$$PERSPRF^TIULE(DUZ)
- I +$P(TIUPREF,U,11) Q
- I +$P(TIUPRM0,U,7),$S($P(TIUPREF,U,11)=0:0,1:1) Q
- I +$O(^TIU(8925,"ACLPT",3,DFN,0))'>0 Q
- D SELPAT^TIULA2(.TIURTN,3,DFN,1)
- I +$G(TIURTN)'>0,($D(TIURTN)=1) D S TIUOUT=1 Q
- . W !!,"Nothing selected.",!
- S TIUI=0
- F S TIUI=$O(TIURTN(TIUI)) Q:+TIUI'>0 D Q:$D(DUOUT)!$D(DIROUT)!+$G(TIUOUT)
- . N TIUDA
- . S TIUDA=+$G(TIURTN(TIUI)) Q:TIUDA'>0
- . D GETTIU^TIULD(.TIU,+TIUDA)
- . I $D(TIU) D
- . . S TIUSEE=$$CANDO^TIULP(TIUDA,"VIEW")
- . . I 'TIUSEE D Q
- . . . W !!,$C(7),$P(TIUSEE,U,2),! K DFN
- . . . I $D(ORVP) S TIUOUT=1
- . . . S TIU=$$READ^TIUU("FOA","Press RETURN to continue...")
- . . D EN^VALM("TIU BROWSE FOR CLINICIAN")
- . . K ^TMP("TIUVIEW",$J),DFN
- . . S:$D(TIUQUIT) TIUOUT=1
- Q
- CHEKSAVE(DUZ) ; Checks for entry in ^TIU(8925,"ASAVE",DUZ,TIUDA)
- Q +$O(^TIU(8925,"ASAVE",DUZ,0))
- EDITSAVE(DUZ) ; Evaluates whether an unsaved document exists, allows edit
- N TIUDA,TIUPRMT,TIUY,TIU,TIUEDIT
- ;*299
- S TIUDA=0 F S TIUDA=$O(^TIU(8925,"ASAVE",DUZ,TIUDA)) Q:'TIUDA D
- . ; If the document is gone, then delete the save flag and Quit
- . I '$D(^TIU(8925,+TIUDA,0)) K ^TIU(8925,"ASAVE",DUZ,+TIUDA) Q
- . I $P($G(^TIU(8925,TIUDA,13)),U,2)'=DUZ K ^TIU(8925,"ASAVE",DUZ,TIUDA) Q
- . S TIUEDIT=$$CANDO^TIULP(TIUDA,"EDIT RECORD")
- . I '+TIUEDIT K ^TIU(8925,"ASAVE",DUZ,TIUDA) Q
- ;
- S TIUDA=$$CHEKSAVE(DUZ)
- I +TIUDA'>0 Q
- ; If Lock can't be acquired, quit
- L +^TIU(8925,+TIUDA,0):1
- E Q
- W !!,"You have an unsaved document in your buffer."
- W !,"Depending on your preferred editor, you may"
- W !,"have lost some of the text.",!
- S TIUPRMT="Would you like to resume editing now"
- S TIUY=$$READ^TIUU("Y",TIUPRMT,"YES")
- I +TIUY'>0 W !!,"Okay. You can catch up with it later!",! H 1 G EDSAVEX
- W !!,"Good. Here we go then!",!
- I $D(^TIU(8925,+TIUDA,"TEMP")),'$D(^TIU(8925,+TIUDA,"TEXT")) D
- . D GETTIU^TIULD(.TIU,TIUDA)
- . D MERGTEXT^TIUEDI1(TIUDA,.TIU)
- D EDIT1^TIURA
- EDSAVEX L -^TIU(8925,+TIUDA,0)
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HTIUEDI2 2895 printed Feb 19, 2025@00:06:25 Page 2
- TIUEDI2 ; SLC/JER - Additional Edit Code ; 7-MAR-2000 10:57:50
- +1 ;;1.0;TEXT INTEGRATION UTILITIES;**1,89,299**;Jun 20, 1997;Build 3
- +2 ;Per VHA Directive 2004-038, this routine should not be modified.
- GETENTRY(TIUTYP) ; Get Entry Action, enforce inheritance
- +1 NEW TIUDAD,TIUY
- SET TIUDAD=0
- +2 SET TIUY=$GET(^TIU(8925.1,+TIUTYP,4.6))
- +3 IF TIUY']""
- SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
- +4 IF +TIUDAD
- SET TIUY=$$GETENTRY(TIUDAD)
- +5 QUIT TIUY
- GETEXIT(TIUTYP) ; Get Validation method, enforce enheritance
- +1 NEW TIUDAD,TIUY
- SET TIUDAD=0
- +2 SET TIUY=$GET(^TIU(8925.1,+TIUTYP,4.7))
- +3 IF TIUY']""
- SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
- +4 IF +TIUDAD
- SET TIUY=$$GETEXIT(TIUDAD)
- +5 QUIT TIUY
- EXSTNOTE(DFN) ; Sample/display existing notes
- +1 NEW TIUSMPL,TIUTOTL,TIUEDT,TIULDT,TIUPRMT,TIURVW,TIUPNOUN,TIUSEE,TIUOUT
- +2 NEW TIUA,TIUI,TIUJ,TIULAST,TIULIST,TIUREC,TIURTN,TIUSTOP,TIUY,TIUZ,TIUQUIT
- +3 IF '$DATA(TIUPRM0)
- DO SETPARM^TIULE
- +4 IF '$DATA(TIUPREF)
- SET TIUPREF=$$PERSPRF^TIULE(DUZ)
- +5 IF +$PIECE(TIUPREF,U,11)
- QUIT
- +6 IF +$PIECE(TIUPRM0,U,7)
- IF $SELECT($PIECE(TIUPREF,U,11)=0:0,1:1)
- QUIT
- +7 IF +$ORDER(^TIU(8925,"ACLPT",3,DFN,0))'>0
- QUIT
- +8 DO SELPAT^TIULA2(.TIURTN,3,DFN,1)
- +9 IF +$GET(TIURTN)'>0
- IF ($DATA(TIURTN)=1)
- Begin DoDot:1
- +10 WRITE !!,"Nothing selected.",!
- End DoDot:1
- SET TIUOUT=1
- QUIT
- +11 SET TIUI=0
- +12 FOR
- SET TIUI=$ORDER(TIURTN(TIUI))
- if +TIUI'>0
- QUIT
- Begin DoDot:1
- +13 NEW TIUDA
- +14 SET TIUDA=+$GET(TIURTN(TIUI))
- if TIUDA'>0
- QUIT
- +15 DO GETTIU^TIULD(.TIU,+TIUDA)
- +16 IF $DATA(TIU)
- Begin DoDot:2
- +17 SET TIUSEE=$$CANDO^TIULP(TIUDA,"VIEW")
- +18 IF 'TIUSEE
- Begin DoDot:3
- +19 WRITE !!,$CHAR(7),$PIECE(TIUSEE,U,2),!
- KILL DFN
- +20 IF $DATA(ORVP)
- SET TIUOUT=1
- +21 SET TIU=$$READ^TIUU("FOA","Press RETURN to continue...")
- End DoDot:3
- QUIT
- +22 DO EN^VALM("TIU BROWSE FOR CLINICIAN")
- +23 KILL ^TMP("TIUVIEW",$JOB),DFN
- +24 if $DATA(TIUQUIT)
- SET TIUOUT=1
- End DoDot:2
- End DoDot:1
- if $DATA(DUOUT)!$DATA(DIROUT)!+$GET(TIUOUT)
- QUIT
- +25 QUIT
- CHEKSAVE(DUZ) ; Checks for entry in ^TIU(8925,"ASAVE",DUZ,TIUDA)
- +1 QUIT +$ORDER(^TIU(8925,"ASAVE",DUZ,0))
- EDITSAVE(DUZ) ; Evaluates whether an unsaved document exists, allows edit
- +1 NEW TIUDA,TIUPRMT,TIUY,TIU,TIUEDIT
- +2 ;*299
- +3 SET TIUDA=0
- FOR
- SET TIUDA=$ORDER(^TIU(8925,"ASAVE",DUZ,TIUDA))
- if 'TIUDA
- QUIT
- Begin DoDot:1
- +4 ; If the document is gone, then delete the save flag and Quit
- +5 IF '$DATA(^TIU(8925,+TIUDA,0))
- KILL ^TIU(8925,"ASAVE",DUZ,+TIUDA)
- QUIT
- +6 IF $PIECE($GET(^TIU(8925,TIUDA,13)),U,2)'=DUZ
- KILL ^TIU(8925,"ASAVE",DUZ,TIUDA)
- QUIT
- +7 SET TIUEDIT=$$CANDO^TIULP(TIUDA,"EDIT RECORD")
- +8 IF '+TIUEDIT
- KILL ^TIU(8925,"ASAVE",DUZ,TIUDA)
- QUIT
- End DoDot:1
- +9 ;
- +10 SET TIUDA=$$CHEKSAVE(DUZ)
- +11 IF +TIUDA'>0
- QUIT
- +12 ; If Lock can't be acquired, quit
- +13 LOCK +^TIU(8925,+TIUDA,0):1
- +14 IF '$TEST
- QUIT
- +15 WRITE !!,"You have an unsaved document in your buffer."
- +16 WRITE !,"Depending on your preferred editor, you may"
- +17 WRITE !,"have lost some of the text.",!
- +18 SET TIUPRMT="Would you like to resume editing now"
- +19 SET TIUY=$$READ^TIUU("Y",TIUPRMT,"YES")
- +20 IF +TIUY'>0
- WRITE !!,"Okay. You can catch up with it later!",!
- HANG 1
- GOTO EDSAVEX
- +21 WRITE !!,"Good. Here we go then!",!
- +22 IF $DATA(^TIU(8925,+TIUDA,"TEMP"))
- IF '$DATA(^TIU(8925,+TIUDA,"TEXT"))
- Begin DoDot:1
- +23 DO GETTIU^TIULD(.TIU,TIUDA)
- +24 DO MERGTEXT^TIUEDI1(TIUDA,.TIU)
- End DoDot:1
- +25 DO EDIT1^TIURA
- EDSAVEX LOCK -^TIU(8925,+TIUDA,0)
- +1 QUIT