TIUR1 ; SLC/JER - Integrated Document Review ;11/01/03
;;1.0;TEXT INTEGRATION UTILITIES;**79,100,113,112**;Jun 20, 1997
; 11/30/00 moved PUTLIST & ADDELMNT here from TIUR.
; 12/12/00 moved PUTLIST, ADDELMNT, PARENT, EXPANDKD to TIUR2
GATHER(TIUI,TIUPREF,CLASS,STATIFNS,EARLY,LATE,XREF,SCREEN) ; Find/sort
; Uses title info from ^TMP("TIUTYP",$J) array, set in SELTYP^TIULA
N TIUT,TIUTP,TIUS,TIUSTAT,TIUSFLD,TIUD0,TIUD12,TIUD13,TIUD15
N TIUIFN,TIULD
S TIUSFLD=$P(TIUPREF,U,3)
S TIUSFLD=$S(TIUSFLD="P":".02",TIUSFLD="D":".01",TIUSFLD="S":".05",TIUSFLD="C":"1507",TIUSFLD="A":"1202",TIUSFLD="E":"1208",1:"1301")
S TIUT=0 F S TIUT=$O(^TMP("TIUTYP",$J,TIUT)) Q:+TIUT'>0 D
. S TIUTP=+$P($G(^TMP("TIUTYP",$J,TIUT)),U,2) Q:TIUTP'>0
. S TIUS=1 F S TIUSTAT=$P(STATIFNS,";",TIUS) Q:'TIUSTAT D
. . S TIUS=TIUS+1
. . S (TIUJ,TIULD)=LATE
. . F S TIUJ=$O(^TIU(8925,XREF,TIUI,TIUTP,TIUSTAT,TIUJ)) Q:+TIUJ'>0!(+TIUJ>EARLY) D
. . . S TIUIFN=0
. . . F S TIUIFN=$O(^TIU(8925,XREF,TIUI,TIUTP,TIUSTAT,TIUJ,TIUIFN)) Q:+TIUIFN'>0 D
. . . . I ($P(TIUPRM0,U,6)="S"),(+$$CANDO^TIULP(TIUIFN,"VIEW")'>0) Q
. . . . I +$G(ORVP),(+$P($G(^TIU(8925,+TIUIFN,0)),U,2)'=+$G(ORVP)) Q
. . . . I TIUTP=81,(^TMP("TIUTYP",$J)>1),($P(^TMP("TIUTYP",$J,TIUT),U,4)="NOT PICKED"),(+$P($G(^TIU(8925,+TIUIFN,0)),U,5)>6) Q
. . . . I TIUTP=81,(^TMP("TIUTYP",$J)>1),($P(^TMP("TIUTYP",$J,TIUT),U,4)="NOT PICKED"),'+$$DADINTYP(TIUIFN) Q
. . . . S TIUQ=$$RESOLVE(TIUIFN,TIUSFLD)
. . . . ; S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN)="",TIULD=TIUJ ; P113
. . . . ; TIUK=1: 1 search category chosen (SCREEN="")
. . . . ; TIUK>1: 2+ search categories chosen (SCREEN=1)
. . . . ; ALL my unsigned (SCREEN="ALL")
. . . . I SCREEN=1!(SCREEN="ALL") S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN)=1
. . . . E D
. . . . . I $D(^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN)),$G(^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN))=(SCREEN-1) S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN)=SCREEN
. . . . S TIULD=TIUJ
I +$G(TIUQUIK)=1,+$G(TIULD) D ADDSIGN(DUZ,CLASS,TIULD,TIUSFLD)
Q
DADINTYP(TIUDA) ; addendum's parent belong? 12/1/00 Removed param TYPES
N TIUI,TIUDTYP,TIUY S (TIUI,TIUY)=0
S TIUDTYP=+$G(^TIU(8925,+$P($G(^TIU(8925,+TIUDA,0)),U,6),0))
F S TIUI=$O(^TMP("TIUTYP",$J,TIUI)) Q:+TIUI'>0!+TIUY D
. I +$P(^TMP("TIUTYP",$J,TIUI),U,2)=TIUDTYP S TIUY=1
Q TIUY
RESOLVE(DA,DR) ; resolve sort field values
N TIUD0,TIUD12,TIUD13,TIUD15,TIUY
S TIUD0=$G(^TIU(8925,+DA,0)),TIUD12=$G(^TIU(8925,+DA,12))
S TIUD13=$G(^TIU(8925,+DA,13)),TIUD15=$G(^TIU(8925,+DA,15))
I DR=.01 S TIUY=$$PNAME^TIULC1(+TIUD0) G RESX
I DR=.02 S TIUY=$$PTNAME^TIULC1(+$P(TIUD0,U,2)) G RESX
I DR=.05 S TIUY=$P(TIUD0,U,5) G RESX
I DR=1202 S TIUY=$$PERSNAME^TIULC1(+$P(TIUD12,U,2)) S:TIUY="UNKNOWN" TIUY="" G RESX
I DR=1208 S TIUY=$$PERSNAME^TIULC1(+$P(TIUD12,U,8)) S:TIUY="UNKNOWN" TIUY="" G RESX
I DR=1301 S TIUY=$P(TIUD13,U) G RESX
;I DR=1507,($P(TIUD0,U,5)=7),(+$P(TIUD15,U,7)'>0) S DR=1501
I DR=1507,(($P(TIUD0,U,5)=7)!($P(TIUD0,U,5)=8)),(+$P(TIUD15,U,7)'>0) S DR=1501 ;TIU*1*100 amended notes were sorting at top w sortval=ZZZZEMPTY for sortfld=complete, even tho they had sign date and displayed it.
I DR=1501 S TIUY=$P(TIUD15,U) G RESX
I DR=1507 S TIUY=$P(TIUD15,U,7)
RESX I $G(TIUY)']"" S TIUY="ZZZZEMPTY"
Q TIUY
;
ADDSIGN(USER,CLASS,DATE,SORTBY) ; Get documents for which the user is the additional signer
N TIUI,TIUY S TIUI=0
D NEEDSIG^TIULX(.TIUY,USER,CLASS)
F S TIUI=$O(@TIUY@(TIUI)) Q:+TIUI'>0 D
. N TIUDA,TIUD13,TIUQ,TIUJ
. S TIUDA=+$G(@TIUY@(TIUI)),TIUD13=$G(^TIU(8925,TIUDA,13))
. S TIUQ=$$RESOLVE(TIUDA,SORTBY),TIUJ=9999999-+TIUD13
. ; S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUDA)="" ; P113
. S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUDA)=1
K @TIUY
Q
TIUR1 ; SLC/JER - Integrated Document Review ;11/01/03
+1 ;;1.0;TEXT INTEGRATION UTILITIES;**79,100,113,112**;Jun 20, 1997
+2 ; 11/30/00 moved PUTLIST & ADDELMNT here from TIUR.
+3 ; 12/12/00 moved PUTLIST, ADDELMNT, PARENT, EXPANDKD to TIUR2
GATHER(TIUI,TIUPREF,CLASS,STATIFNS,EARLY,LATE,XREF,SCREEN) ; Find/sort
+1 ; Uses title info from ^TMP("TIUTYP",$J) array, set in SELTYP^TIULA
+2 NEW TIUT,TIUTP,TIUS,TIUSTAT,TIUSFLD,TIUD0,TIUD12,TIUD13,TIUD15
+3 NEW TIUIFN,TIULD
+4 SET TIUSFLD=$PIECE(TIUPREF,U,3)
+5 SET TIUSFLD=$SELECT(TIUSFLD="P":".02",TIUSFLD="D":".01",TIUSFLD="S":".05",TIUSFLD="C":"1507",TIUSFLD="A":"1202",TIUSFLD="E":"1208",1:"1301")
+6 SET TIUT=0
FOR
SET TIUT=$ORDER(^TMP("TIUTYP",$JOB,TIUT))
IF +TIUT'>0
QUIT
Begin DoDot:1
+7 SET TIUTP=+$PIECE($GET(^TMP("TIUTYP",$JOB,TIUT)),U,2)
IF TIUTP'>0
QUIT
+8 SET TIUS=1
FOR
SET TIUSTAT=$PIECE(STATIFNS,";",TIUS)
IF 'TIUSTAT
QUIT
Begin DoDot:2
+9 SET TIUS=TIUS+1
+10 SET (TIUJ,TIULD)=LATE
+11 FOR
SET TIUJ=$ORDER(^TIU(8925,XREF,TIUI,TIUTP,TIUSTAT,TIUJ))
IF +TIUJ'>0!(+TIUJ>EARLY)
QUIT
Begin DoDot:3
+12 SET TIUIFN=0
+13 FOR
SET TIUIFN=$ORDER(^TIU(8925,XREF,TIUI,TIUTP,TIUSTAT,TIUJ,TIUIFN))
IF +TIUIFN'>0
QUIT
Begin DoDot:4
+14 IF ($PIECE(TIUPRM0,U,6)="S")
IF (+$$CANDO^TIULP(TIUIFN,"VIEW")'>0)
QUIT
+15 IF +$GET(ORVP)
IF (+$PIECE($GET(^TIU(8925,+TIUIFN,0)),U,2)'=+$GET(ORVP))
QUIT
+16 IF TIUTP=81
IF (^TMP("TIUTYP",$JOB)>1)
IF ($PIECE(^TMP("TIUTYP",$JOB,TIUT),U,4)="NOT PICKED")
IF (+$PIECE($GET(^TIU(8925,+TIUIFN,0)),U,5)>6)
QUIT
+17 IF TIUTP=81
IF (^TMP("TIUTYP",$JOB)>1)
IF ($PIECE(^TMP("TIUTYP",$JOB,TIUT),U,4)="NOT PICKED")
IF '+$$DADINTYP(TIUIFN)
QUIT
+18 SET TIUQ=$$RESOLVE(TIUIFN,TIUSFLD)
+19 ; S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUIFN)="",TIULD=TIUJ ; P113
+20 ; TIUK=1: 1 search category chosen (SCREEN="")
+21 ; TIUK>1: 2+ search categories chosen (SCREEN=1)
+22 ; ALL my unsigned (SCREEN="ALL")
+23 IF SCREEN=1!(SCREEN="ALL")
SET ^TMP("TIUI",$JOB,TIUQ,TIUJ,TIUIFN)=1
+24 IF '$TEST
Begin DoDot:5
+25 IF $DATA(^TMP("TIUI",$JOB,TIUQ,TIUJ,TIUIFN))
IF $GET(^TMP("TIUI",$JOB,TIUQ,TIUJ,TIUIFN))=(SCREEN-1)
SET ^TMP("TIUI",$JOB,TIUQ,TIUJ,TIUIFN)=SCREEN
End DoDot:5
+26 SET TIULD=TIUJ
End DoDot:4
End DoDot:3
End DoDot:2
End DoDot:1
+27 IF +$GET(TIUQUIK)=1
IF +$GET(TIULD)
DO ADDSIGN(DUZ,CLASS,TIULD,TIUSFLD)
+28 QUIT
DADINTYP(TIUDA) ; addendum's parent belong? 12/1/00 Removed param TYPES
+1 NEW TIUI,TIUDTYP,TIUY
SET (TIUI,TIUY)=0
+2 SET TIUDTYP=+$GET(^TIU(8925,+$PIECE($GET(^TIU(8925,+TIUDA,0)),U,6),0))
+3 FOR
SET TIUI=$ORDER(^TMP("TIUTYP",$JOB,TIUI))
IF +TIUI'>0!+TIUY
QUIT
Begin DoDot:1
+4 IF +$PIECE(^TMP("TIUTYP",$JOB,TIUI),U,2)=TIUDTYP
SET TIUY=1
End DoDot:1
+5 QUIT TIUY
RESOLVE(DA,DR) ; resolve sort field values
+1 NEW TIUD0,TIUD12,TIUD13,TIUD15,TIUY
+2 SET TIUD0=$GET(^TIU(8925,+DA,0))
SET TIUD12=$GET(^TIU(8925,+DA,12))
+3 SET TIUD13=$GET(^TIU(8925,+DA,13))
SET TIUD15=$GET(^TIU(8925,+DA,15))
+4 IF DR=.01
SET TIUY=$$PNAME^TIULC1(+TIUD0)
GOTO RESX
+5 IF DR=.02
SET TIUY=$$PTNAME^TIULC1(+$PIECE(TIUD0,U,2))
GOTO RESX
+6 IF DR=.05
SET TIUY=$PIECE(TIUD0,U,5)
GOTO RESX
+7 IF DR=1202
SET TIUY=$$PERSNAME^TIULC1(+$PIECE(TIUD12,U,2))
IF TIUY="UNKNOWN"
SET TIUY=""
GOTO RESX
+8 IF DR=1208
SET TIUY=$$PERSNAME^TIULC1(+$PIECE(TIUD12,U,8))
IF TIUY="UNKNOWN"
SET TIUY=""
GOTO RESX
+9 IF DR=1301
SET TIUY=$PIECE(TIUD13,U)
GOTO RESX
+10 ;I DR=1507,($P(TIUD0,U,5)=7),(+$P(TIUD15,U,7)'>0) S DR=1501
+11 ;TIU*1*100 amended notes were sorting at top w sortval=ZZZZEMPTY for sortfld=complete, even tho they had sign date and displayed it.
IF DR=1507
IF (($PIECE(TIUD0,U,5)=7)!($PIECE(TIUD0,U,5)=8))
IF (+$PIECE(TIUD15,U,7)'>0)
SET DR=1501
+12 IF DR=1501
SET TIUY=$PIECE(TIUD15,U)
GOTO RESX
+13 IF DR=1507
SET TIUY=$PIECE(TIUD15,U,7)
RESX IF $GET(TIUY)']""
SET TIUY="ZZZZEMPTY"
+1 QUIT TIUY
+2 ;
ADDSIGN(USER,CLASS,DATE,SORTBY) ; Get documents for which the user is the additional signer
+1 NEW TIUI,TIUY
SET TIUI=0
+2 DO NEEDSIG^TIULX(.TIUY,USER,CLASS)
+3 FOR
SET TIUI=$ORDER(@TIUY@(TIUI))
IF +TIUI'>0
QUIT
Begin DoDot:1
+4 NEW TIUDA,TIUD13,TIUQ,TIUJ
+5 SET TIUDA=+$GET(@TIUY@(TIUI))
SET TIUD13=$GET(^TIU(8925,TIUDA,13))
+6 SET TIUQ=$$RESOLVE(TIUDA,SORTBY)
SET TIUJ=9999999-+TIUD13
+7 ; S ^TMP("TIUI",$J,TIUQ,TIUJ,TIUDA)="" ; P113
+8 SET ^TMP("TIUI",$JOB,TIUQ,TIUJ,TIUDA)=1
End DoDot:1
+9 KILL @TIUY
+10 QUIT