TIUALSET ;SLC/AJB - TIU Alerts ; Mar 17, 2003
;;1.0;TEXT INTEGRATION UTILITIES;**158**;Jun 20, 1997
;
Q
DETDISP ; detailed display
N D0,DIROUT,RSTRCTD,TIUDA,TIUD,TIUDATA,TIUGDATA,TIUSEL,TIUI,TIUQUIT,Y
D FULL^VALM1
I TIU("CNT")=0 W !,"No documents to select." H 3 Q
S TIUSEL=$P(XQORNOD(0),"=",2)
I TIUSEL="" D Q:TIUSEL=U!($D(DIRUT))
. N DIR,X,Y
. S DIR("A")="Select Document: (1-"_VALMLST_") "
. S DIR(0)="NA^1:"_VALMLST
. D ^DIR S TIUSEL=Y
I $A($E(TIUSEL,$L(TIUSEL)))<48!($A($E(TIUSEL,$L(TIUSEL)))>57) S TIUSEL=$E(TIUSEL,1,$L(TIUSEL)-1)
F X=1:1 Q:$P(TIUSEL,",",X)="" S TIUC($P(TIUSEL,",",X))=$O(@VALMAR@("IDX",$P(TIUSEL,",",X),""))
S TIUDA=TIUC(TIUSEL)
D
. N TIUVIEW
. D CLEAR^VALM1
. S TIUVIEW=$$CANDO^TIULP(TIUDA,"VIEW")
. I +TIUVIEW'>0 D Q
. . W !!,$C(7),$P(TIUVIEW,U,2),!
. . I $$READ^TIUU("EA","RETURN to continue...") ; pause
. S RSTRCTD=$$DOCRES^TIULRR(TIUDA)
. I RSTRCTD D Q
. . W !!,$C(7),"Ok, no harm done...",!
. . I $$READ^TIUU("EA","RETURN to continue...") ; pause
. D EN^TIUAUDIT
. I +$G(TIUQUIT) D FIXLSTNW^TIULM Q
K VALMY S VALMBCK="R"
Q
UPDATE ; update LM display for edited documents
;
N TIUAS,TIUDISP
S TIUAS="",TIUAS=$O(^TIU(8925.7,"AE",TIUDA,TIU("P"),TIUAS))
S TIUDISP=@VALMAR@(TIUSEL,0)
S TIUDISP("REFDT")=$$FMTDT^TIUAL1(+^TIU(8925,TIUDA,13))
S TIUDISP("S")=$$GET1^DIQ(8925,TIUDA,.05)
S TIUDISP("A/D")=$$GET1^DIQ(8925,TIUDA,1202)
S TIUDISP("EC")=$$GET1^DIQ(8925,TIUDA,1208)
S TIUDISP("ATT")=$$GET1^DIQ(8925,TIUDA,1209)
S TIUDISP("ADS")=$$GET1^DIQ(8925.7,TIUAS,.03)
S TIUDISP=$$SETSTR^VALM1(TIUDISP("REFDT"),TIUDISP,60,68)
S TIUDISP=$$SETSTR^VALM1($$LOW^XLFSTR(TIUDISP("S")),TIUDISP,70,80)
S TIUDISP=$$SETSTR^VALM1(TIUSEL,TIUDISP,81,86)
S TIUDISP=$$SETSTR^VALM1($E(TIUDISP("A/D"),1,17),TIUDISP,88,105)
S TIUDISP=$$SETSTR^VALM1($E($G(TIUDISP("EC")),1,17),TIUDISP,107,124)
S TIUDISP=$$SETSTR^VALM1($E($G(TIUDISP("ATT")),1,17),TIUDISP,126,143)
S TIUDISP=$$SETSTR^VALM1($E($G(TIUDISP("ADS")),1,15),TIUDISP,145,160)
D SET^VALM10(TIUSEL,TIUDISP,TIUDA)
D RE^VALM4
Q
SETUP ; user required input for search parameters
N TIUCAT,TIUCNT,TIUPERS,TIUTMP,TIUSTAT
D I TIUSTAT=-1 S TIU("QUIT")=1 Q
. S TIUSTAT=$$SELSTAT^TIUAL1(.TIUSTAT,"A","UNSIGNED","TIU STATUS MENU")
D I TIUCAT=-1 S TIU("QUIT")=1 Q
. S TIUCAT=$$SELSTAT^TIUAL1(.TIUCAT,"A","AUTHOR","TIU ALERTS SEARCH MENU")
D I TIUPERS=-1 S TIU("QUIT")=1 Q
. N DIC
. S DIC="^VA(200,",DIC(0)="AEMQ"
. S DIC("A")="Select NEW PERSON: "
. D ^DIC S TIUPERS=+Y
. I $$GET1^DIQ(200,+Y,7,"I")!$$GET1^DIQ(200,+Y,9.2,"I") D
. . W !
. . W:$$GET1^DIQ(200,+Y,7,"I") !,$$GET1^DIQ(200,+Y,.01)," is INACTIVE (DIUSER'd)"
. . W:$$GET1^DIQ(200,+Y,9.2,"I") !,$$GET1^DIQ(200,+Y,.01)," has a termination date of ",$$GET1^DIQ(200,+Y,9.2)
. . W !
D I '$G(TIUTMP("DT1"))!('$G(TIUTMP("DT2"))) S TIU("QUIT")=1 Q ; select date range
. F TIUCNT=1:1:2 D
. . N %DT S %DT="AET"
. . S %DT("A")=$S(TIUCNT=1:" Start Reference Date [Time]: ",TIUCNT=2:"Ending Reference Date [Time]: ")
. . S %DT("B")=$S(TIUCNT=1:"T-7",TIUCNT=2:$P($$HTE^XLFDT($H),"@"))
. . D ^%DT
. . I Y=-1 S TIUCNT=2 Q
. . I TIUCNT=1 S TIUTMP("DT1")=+Y
. . I TIUTMP("DT1")>+Y S TIUTMP("DT3")=TIUTMP("DT1"),TIUTMP("DT1")=+Y,Y=TIUTMP("DT3")
. . I TIUCNT=2,Y["." S TIUTMP("DT2")=+Y
. . E I TIUCNT=2 S TIUTMP("DT2")=+Y_".24"
K TIU
F TIUCNT=1:1:TIUCAT D
. S TIUCAT=$S(+TIUCAT(TIUCNT)=1:"CA",+TIUCAT(TIUCNT)=2:"CA",+TIUCAT(TIUCNT)=3:"CS",+TIUCAT(TIUCNT)=4:"CS",+TIUCAT(TIUCNT)=5:"AE") S:'$D(TIU("C",TIUCAT)) TIU("C",TIUCAT)=""
. S TIU("C",TIUCAT)=TIU("C",TIUCAT)_U_$S(+TIUCAT(TIUCNT)=1:"Author",+TIUCAT(TIUCNT)=2:"Dictator",+TIUCAT(TIUCNT)=3:"Expected Cosigner",+TIUCAT(TIUCNT)=4:"Attending Physician",+TIUCAT(TIUCNT)=5:"Add'l Signer")
S TIU("P")=+TIUPERS
S TIU("S")=TIUSTAT
F TIUCNT=1:1:TIUSTAT S TIU("S",TIUCNT)=TIUSTAT(TIUCNT) S $P(TIU("S",TIUCNT),U)=$S(+TIU("S",TIUCNT)=10:14,+TIU("S",TIUCNT)=11:15,1:+TIU("S",TIUCNT))
S TIU("D",1)=TIUTMP("DT1")
S TIU("D",2)=TIUTMP("DT2")
Q
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HTIUALSET 4053 printed Oct 16, 2024@18:39:29 Page 2
TIUALSET ;SLC/AJB - TIU Alerts ; Mar 17, 2003
+1 ;;1.0;TEXT INTEGRATION UTILITIES;**158**;Jun 20, 1997
+2 ;
+3 QUIT
DETDISP ; detailed display
+1 NEW D0,DIROUT,RSTRCTD,TIUDA,TIUD,TIUDATA,TIUGDATA,TIUSEL,TIUI,TIUQUIT,Y
+2 DO FULL^VALM1
+3 IF TIU("CNT")=0
WRITE !,"No documents to select."
HANG 3
QUIT
+4 SET TIUSEL=$PIECE(XQORNOD(0),"=",2)
+5 IF TIUSEL=""
Begin DoDot:1
+6 NEW DIR,X,Y
+7 SET DIR("A")="Select Document: (1-"_VALMLST_") "
+8 SET DIR(0)="NA^1:"_VALMLST
+9 DO ^DIR
SET TIUSEL=Y
End DoDot:1
if TIUSEL=U!($DATA(DIRUT))
QUIT
+10 IF $ASCII($EXTRACT(TIUSEL,$LENGTH(TIUSEL)))<48!($ASCII($EXTRACT(TIUSEL,$LENGTH(TIUSEL)))>57)
SET TIUSEL=$EXTRACT(TIUSEL,1,$LENGTH(TIUSEL)-1)
+11 FOR X=1:1
if $PIECE(TIUSEL,",",X)=""
QUIT
SET TIUC($PIECE(TIUSEL,",",X))=$ORDER(@VALMAR@("IDX",$PIECE(TIUSEL,",",X),""))
+12 SET TIUDA=TIUC(TIUSEL)
+13 Begin DoDot:1
+14 NEW TIUVIEW
+15 DO CLEAR^VALM1
+16 SET TIUVIEW=$$CANDO^TIULP(TIUDA,"VIEW")
+17 IF +TIUVIEW'>0
Begin DoDot:2
+18 WRITE !!,$CHAR(7),$PIECE(TIUVIEW,U,2),!
+19 ; pause
IF $$READ^TIUU("EA","RETURN to continue...")
End DoDot:2
QUIT
+20 SET RSTRCTD=$$DOCRES^TIULRR(TIUDA)
+21 IF RSTRCTD
Begin DoDot:2
+22 WRITE !!,$CHAR(7),"Ok, no harm done...",!
+23 ; pause
IF $$READ^TIUU("EA","RETURN to continue...")
End DoDot:2
QUIT
+24 DO EN^TIUAUDIT
+25 IF +$GET(TIUQUIT)
DO FIXLSTNW^TIULM
QUIT
End DoDot:1
+26 KILL VALMY
SET VALMBCK="R"
+27 QUIT
UPDATE ; update LM display for edited documents
+1 ;
+2 NEW TIUAS,TIUDISP
+3 SET TIUAS=""
SET TIUAS=$ORDER(^TIU(8925.7,"AE",TIUDA,TIU("P"),TIUAS))
+4 SET TIUDISP=@VALMAR@(TIUSEL,0)
+5 SET TIUDISP("REFDT")=$$FMTDT^TIUAL1(+^TIU(8925,TIUDA,13))
+6 SET TIUDISP("S")=$$GET1^DIQ(8925,TIUDA,.05)
+7 SET TIUDISP("A/D")=$$GET1^DIQ(8925,TIUDA,1202)
+8 SET TIUDISP("EC")=$$GET1^DIQ(8925,TIUDA,1208)
+9 SET TIUDISP("ATT")=$$GET1^DIQ(8925,TIUDA,1209)
+10 SET TIUDISP("ADS")=$$GET1^DIQ(8925.7,TIUAS,.03)
+11 SET TIUDISP=$$SETSTR^VALM1(TIUDISP("REFDT"),TIUDISP,60,68)
+12 SET TIUDISP=$$SETSTR^VALM1($$LOW^XLFSTR(TIUDISP("S")),TIUDISP,70,80)
+13 SET TIUDISP=$$SETSTR^VALM1(TIUSEL,TIUDISP,81,86)
+14 SET TIUDISP=$$SETSTR^VALM1($EXTRACT(TIUDISP("A/D"),1,17),TIUDISP,88,105)
+15 SET TIUDISP=$$SETSTR^VALM1($EXTRACT($GET(TIUDISP("EC")),1,17),TIUDISP,107,124)
+16 SET TIUDISP=$$SETSTR^VALM1($EXTRACT($GET(TIUDISP("ATT")),1,17),TIUDISP,126,143)
+17 SET TIUDISP=$$SETSTR^VALM1($EXTRACT($GET(TIUDISP("ADS")),1,15),TIUDISP,145,160)
+18 DO SET^VALM10(TIUSEL,TIUDISP,TIUDA)
+19 DO RE^VALM4
+20 QUIT
SETUP ; user required input for search parameters
+1 NEW TIUCAT,TIUCNT,TIUPERS,TIUTMP,TIUSTAT
+2 Begin DoDot:1
+3 SET TIUSTAT=$$SELSTAT^TIUAL1(.TIUSTAT,"A","UNSIGNED","TIU STATUS MENU")
End DoDot:1
IF TIUSTAT=-1
SET TIU("QUIT")=1
QUIT
+4 Begin DoDot:1
+5 SET TIUCAT=$$SELSTAT^TIUAL1(.TIUCAT,"A","AUTHOR","TIU ALERTS SEARCH MENU")
End DoDot:1
IF TIUCAT=-1
SET TIU("QUIT")=1
QUIT
+6 Begin DoDot:1
+7 NEW DIC
+8 SET DIC="^VA(200,"
SET DIC(0)="AEMQ"
+9 SET DIC("A")="Select NEW PERSON: "
+10 DO ^DIC
SET TIUPERS=+Y
+11 IF $$GET1^DIQ(200,+Y,7,"I")!$$GET1^DIQ(200,+Y,9.2,"I")
Begin DoDot:2
+12 WRITE !
+13 if $$GET1^DIQ(200,+Y,7,"I")
WRITE !,$$GET1^DIQ(200,+Y,.01)," is INACTIVE (DIUSER'd)"
+14 if $$GET1^DIQ(200,+Y,9.2,"I")
WRITE !,$$GET1^DIQ(200,+Y,.01)," has a termination date of ",$$GET1^DIQ(200,+Y,9.2)
+15 WRITE !
End DoDot:2
End DoDot:1
IF TIUPERS=-1
SET TIU("QUIT")=1
QUIT
+16 ; select date range
Begin DoDot:1
+17 FOR TIUCNT=1:1:2
Begin DoDot:2
+18 NEW %DT
SET %DT="AET"
+19 SET %DT("A")=$SELECT(TIUCNT=1:" Start Reference Date [Time]: ",TIUCNT=2:"Ending Reference Date [Time]: ")
+20 SET %DT("B")=$SELECT(TIUCNT=1:"T-7",TIUCNT=2:$PIECE($$HTE^XLFDT($HOROLOG),"@"))
+21 DO ^%DT
+22 IF Y=-1
SET TIUCNT=2
QUIT
+23 IF TIUCNT=1
SET TIUTMP("DT1")=+Y
+24 IF TIUTMP("DT1")>+Y
SET TIUTMP("DT3")=TIUTMP("DT1")
SET TIUTMP("DT1")=+Y
SET Y=TIUTMP("DT3")
+25 IF TIUCNT=2
IF Y["."
SET TIUTMP("DT2")=+Y
+26 IF '$TEST
IF TIUCNT=2
SET TIUTMP("DT2")=+Y_".24"
End DoDot:2
End DoDot:1
IF '$GET(TIUTMP("DT1"))!('$GET(TIUTMP("DT2")))
SET TIU("QUIT")=1
QUIT
+27 KILL TIU
+28 FOR TIUCNT=1:1:TIUCAT
Begin DoDot:1
+29 SET TIUCAT=$SELECT(+TIUCAT(TIUCNT)=1:"CA",+TIUCAT(TIUCNT)=2:"CA",+TIUCAT(TIUCNT)=3:"CS",+TIUCAT(TIUCNT)=4:"CS",+TIUCAT(TIUCNT)=5:"AE")
if '$DATA(TIU("C",TIUCAT))
SET TIU("C",TIUCAT)=""
+30 SET TIU("C",TIUCAT)=TIU("C",TIUCAT)_U_$SELECT(+TIUCAT(TIUCNT)=1:"Author",+TIUCAT(TIUCNT)=2:"Dictator",+TIUCAT(TIUCNT)=3:"Expected Cosigner",+TIUCAT(TIUCNT)=4:"Attending Physician",+TIUCAT(TIUCNT)=5:"Add'l Signer")
End DoDot:1
+31 SET TIU("P")=+TIUPERS
+32 SET TIU("S")=TIUSTAT
+33 FOR TIUCNT=1:1:TIUSTAT
SET TIU("S",TIUCNT)=TIUSTAT(TIUCNT)
SET $PIECE(TIU("S",TIUCNT),U)=$SELECT(+TIU("S",TIUCNT)=10:14,+TIU("S",TIUCNT)=11:15,1:+TIU("S",TIUCNT))
+34 SET TIU("D",1)=TIUTMP("DT1")
+35 SET TIU("D",2)=TIUTMP("DT2")
+36 QUIT