TIULG ; SLC/JER - More Library functions ;5/27/03
;;1.0;TEXT INTEGRATION UTILITIES;**1,89,137**;Jun 20, 1997
;
TYPSHORT(INTTYPE) ; Return "TL" for Interior Type "DOC",
;Return int type for others
N TIUY
S TIUY=$S(INTTYPE="DOC":"TL",1:INTTYPE)
Q TIUY
TYPEXT(INTTYPE) ; Given interior type DOC, DC, or CL of Docmt Def,
;return exterior type
N TIUY
S TIUY=$S(INTTYPE="DOC":"TITLE",INTTYPE="DC":"DOCUMENT CLASS",INTTYPE="CL":"CLASS",1:"Document Definition")
Q TIUY
;
BADSIG(TIUX,NOAUTH) ; Sig failed
N TIUTNAME
I TIUX=0 D
. W !!,"Use 'Edit Electronic Signature Code' option"
. W !,"on Secondary Menu under User's Toolbox." H 4
I +$G(NOAUTH) W !!,$C(7),$C(7),"Only authorized PROVIDERS may sign. Contact IRM for PROVIDER Key allocation."
S TIUTNAME=$S(+$G(TIUTYP):$$PNAME^TIULC1(TIUTYP),$G(TIUTYP)]"":TIUTYP,1:"DOCUMENT")
W !!,$C(7),"< ",$$UPPER^TIULS($G(TIUTNAME))
W " SAVED - WITHOUT SIGNATURE >",!
S TIUX=$$READ^TIUU("FOA","Press RETURN to continue...")
Q
PRNTMTHD(TIUTYP,TIUDA) ; Get print method/enforce inheritance
N TIUDAD,TIUY S TIUDAD=0
I +$G(TIUDA),+$$ISADDNDM^TIULC1(TIUDA) S TIUTYP=$$PRNTYP(TIUDA)
S TIUY=$G(^TIU(8925.1,+TIUTYP,6))
I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
I +TIUDAD S TIUY=$$PRNTMTHD(TIUDAD)
Q TIUY
PRNTGRP(TIUTYP,TIUDA) ; Get print group/enforce inheritance
N TIUDAD,TIUY S TIUDAD=0
I +$G(TIUDA),+$$ISADDNDM^TIULC1(TIUDA) S TIUTYP=$$PRNTYP(TIUDA)
S TIUY=$P($G(^TIU(8925.1,+TIUTYP,6.1)),U,3)
I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
I +TIUDAD S TIUY=$$PRNTGRP(TIUDAD)
Q TIUY
PRNTHDR(TIUTYP,TIUDA) ; Get print form header/enforce inheritance
N TIUDAD,TIUY S TIUDAD=0
I +$G(TIUDA),+$$ISADDNDM^TIULC1(TIUDA) S TIUTYP=$$PRNTYP(TIUDA)
S TIUY=$P($G(^TIU(8925.1,+TIUTYP,6.1)),U)
I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
I +TIUDAD S TIUY=$$PRNTHDR(TIUDAD)
Q TIUY
PRNTNBR(TIUTYP,TIUDA) ; Get print form number/enforce inheritance
N TIUDAD,TIUY S TIUDAD=0
I +$G(TIUDA),+$$ISADDNDM^TIULC1(TIUDA) S TIUTYP=$$PRNTYP(TIUDA)
S TIUY=$P($G(^TIU(8925.1,+TIUTYP,6.1)),U,2)
I TIUY']"" S TIUDAD=$O(^TIU(8925.1,"AD",+TIUTYP,0))
I +TIUDAD S TIUY=$$PRNTNBR(TIUDAD)
Q TIUY
PRNTYP(TIUDA) ; Get the type of an addendum's parent document
N TIUDADA
S TIUDADA=+$P($G(^TIU(8925,+TIUDA,0)),U,6)
Q +$G(^TIU(8925,+TIUDADA,0))
XTRASGNR(TIUY,TIUDA) ; Get List of Extra Expected Signers
N TIUI S TIUI=0
F S TIUI=$O(^TIU(8925.7,"B",TIUDA,TIUI)) Q:+TIUI'>0 D
. N TIUDUZ,TIUREQ
. S TIUDUZ=+$P(^TIU(8925.7,+TIUI,0),U,3),TIUREQ=$P(^(0),U,2)
. Q:+TIUDUZ'>0!(+$P($G(^TIU(8925.7,+TIUI,0)),U,4)>0)
. S TIUY(TIUDUZ)=TIUREQ_U_$$SIGNAME^TIULS(TIUDUZ)_U_$$SIGTITL^TIULS(TIUDUZ)
Q
;
ACTIVATE(TIUARRAY,SUCCESS) ; Activate DDEFs
; Activates IENs in received array TIUARRAY(IEN)=whatever
; Sets SUCCESS(IEN) = 1 if IEN activated successfully
; = 0^whynot if not
; Sets SUCCESS = 1 if all activated successfully
; = 0 if not
; Called when exporting new DDEFS and Business Rules, after we
;know that rules were created successfully.
; Skips safeguards present when using DDEF utility to
;activate DDEFs
N IEN,TIUFPRIV
S IEN=0,TIUFPRIV=1
S SUCCESS=1
F S IEN=$O(TIUARRAY(IEN)) Q:'IEN D
. N FDA,TIUERR
. S FDA(8925.1,IEN_",",.07)="ACTIVE"
. D FILE^DIE("KE","FDA","TIUERR")
. I '$D(TIUERR) S SUCCESS(IEN)=1 Q
. S SUCCESS(IEN)="0^"_$G(TIUERR("DIERR",1,"TEXT",1))
. S SUCCESS=0
Q
TIULG ; SLC/JER - More Library functions ;5/27/03
+1 ;;1.0;TEXT INTEGRATION UTILITIES;**1,89,137**;Jun 20, 1997
+2 ;
TYPSHORT(INTTYPE) ; Return "TL" for Interior Type "DOC",
+1 ;Return int type for others
+2 NEW TIUY
+3 SET TIUY=$SELECT(INTTYPE="DOC":"TL",1:INTTYPE)
+4 QUIT TIUY
TYPEXT(INTTYPE) ; Given interior type DOC, DC, or CL of Docmt Def,
+1 ;return exterior type
+2 NEW TIUY
+3 SET TIUY=$SELECT(INTTYPE="DOC":"TITLE",INTTYPE="DC":"DOCUMENT CLASS",INTTYPE="CL":"CLASS",1:"Document Definition")
+4 QUIT TIUY
+5 ;
BADSIG(TIUX,NOAUTH) ; Sig failed
+1 NEW TIUTNAME
+2 IF TIUX=0
Begin DoDot:1
+3 WRITE !!,"Use 'Edit Electronic Signature Code' option"
+4 WRITE !,"on Secondary Menu under User's Toolbox."
HANG 4
End DoDot:1
+5 IF +$GET(NOAUTH)
WRITE !!,$CHAR(7),$CHAR(7),"Only authorized PROVIDERS may sign. Contact IRM for PROVIDER Key allocation."
+6 SET TIUTNAME=$SELECT(+$GET(TIUTYP):$$PNAME^TIULC1(TIUTYP),$GET(TIUTYP)]"":TIUTYP,1:"DOCUMENT")
+7 WRITE !!,$CHAR(7),"< ",$$UPPER^TIULS($GET(TIUTNAME))
+8 WRITE " SAVED - WITHOUT SIGNATURE >",!
+9 SET TIUX=$$READ^TIUU("FOA","Press RETURN to continue...")
+10 QUIT
PRNTMTHD(TIUTYP,TIUDA) ; Get print method/enforce inheritance
+1 NEW TIUDAD,TIUY
SET TIUDAD=0
+2 IF +$GET(TIUDA)
IF +$$ISADDNDM^TIULC1(TIUDA)
SET TIUTYP=$$PRNTYP(TIUDA)
+3 SET TIUY=$GET(^TIU(8925.1,+TIUTYP,6))
+4 IF TIUY']""
SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
+5 IF +TIUDAD
SET TIUY=$$PRNTMTHD(TIUDAD)
+6 QUIT TIUY
PRNTGRP(TIUTYP,TIUDA) ; Get print group/enforce inheritance
+1 NEW TIUDAD,TIUY
SET TIUDAD=0
+2 IF +$GET(TIUDA)
IF +$$ISADDNDM^TIULC1(TIUDA)
SET TIUTYP=$$PRNTYP(TIUDA)
+3 SET TIUY=$PIECE($GET(^TIU(8925.1,+TIUTYP,6.1)),U,3)
+4 IF TIUY']""
SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
+5 IF +TIUDAD
SET TIUY=$$PRNTGRP(TIUDAD)
+6 QUIT TIUY
PRNTHDR(TIUTYP,TIUDA) ; Get print form header/enforce inheritance
+1 NEW TIUDAD,TIUY
SET TIUDAD=0
+2 IF +$GET(TIUDA)
IF +$$ISADDNDM^TIULC1(TIUDA)
SET TIUTYP=$$PRNTYP(TIUDA)
+3 SET TIUY=$PIECE($GET(^TIU(8925.1,+TIUTYP,6.1)),U)
+4 IF TIUY']""
SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
+5 IF +TIUDAD
SET TIUY=$$PRNTHDR(TIUDAD)
+6 QUIT TIUY
PRNTNBR(TIUTYP,TIUDA) ; Get print form number/enforce inheritance
+1 NEW TIUDAD,TIUY
SET TIUDAD=0
+2 IF +$GET(TIUDA)
IF +$$ISADDNDM^TIULC1(TIUDA)
SET TIUTYP=$$PRNTYP(TIUDA)
+3 SET TIUY=$PIECE($GET(^TIU(8925.1,+TIUTYP,6.1)),U,2)
+4 IF TIUY']""
SET TIUDAD=$ORDER(^TIU(8925.1,"AD",+TIUTYP,0))
+5 IF +TIUDAD
SET TIUY=$$PRNTNBR(TIUDAD)
+6 QUIT TIUY
PRNTYP(TIUDA) ; Get the type of an addendum's parent document
+1 NEW TIUDADA
+2 SET TIUDADA=+$PIECE($GET(^TIU(8925,+TIUDA,0)),U,6)
+3 QUIT +$GET(^TIU(8925,+TIUDADA,0))
XTRASGNR(TIUY,TIUDA) ; Get List of Extra Expected Signers
+1 NEW TIUI
SET TIUI=0
+2 FOR
SET TIUI=$ORDER(^TIU(8925.7,"B",TIUDA,TIUI))
IF +TIUI'>0
QUIT
Begin DoDot:1
+3 NEW TIUDUZ,TIUREQ
+4 SET TIUDUZ=+$PIECE(^TIU(8925.7,+TIUI,0),U,3)
SET TIUREQ=$PIECE(^(0),U,2)
+5 IF +TIUDUZ'>0!(+$PIECE($GET(^TIU(8925.7,+TIUI,0)),U,4)>0)
QUIT
+6 SET TIUY(TIUDUZ)=TIUREQ_U_$$SIGNAME^TIULS(TIUDUZ)_U_$$SIGTITL^TIULS(TIUDUZ)
End DoDot:1
+7 QUIT
+8 ;
ACTIVATE(TIUARRAY,SUCCESS) ; Activate DDEFs
+1 ; Activates IENs in received array TIUARRAY(IEN)=whatever
+2 ; Sets SUCCESS(IEN) = 1 if IEN activated successfully
+3 ; = 0^whynot if not
+4 ; Sets SUCCESS = 1 if all activated successfully
+5 ; = 0 if not
+6 ; Called when exporting new DDEFS and Business Rules, after we
+7 ;know that rules were created successfully.
+8 ; Skips safeguards present when using DDEF utility to
+9 ;activate DDEFs
+10 NEW IEN,TIUFPRIV
+11 SET IEN=0
SET TIUFPRIV=1
+12 SET SUCCESS=1
+13 FOR
SET IEN=$ORDER(TIUARRAY(IEN))
IF 'IEN
QUIT
Begin DoDot:1
+14 NEW FDA,TIUERR
+15 SET FDA(8925.1,IEN_",",.07)="ACTIVE"
+16 DO FILE^DIE("KE","FDA","TIUERR")
+17 IF '$DATA(TIUERR)
SET SUCCESS(IEN)=1
QUIT
+18 SET SUCCESS(IEN)="0^"_$GET(TIUERR("DIERR",1,"TEXT",1))
+19 SET SUCCESS=0
End DoDot:1
+20 QUIT