DDMOD ;SFISC/MKO-DD MODIFICATION APIS ;1:45 PM 11 Dec 2001 [ 12/09/2003 4:43 PM ]
;;22.0;VA FileMan;**12,53,95,1002**;Mar 30, 1999
;Per VHA Directive 10-93-142, this routine should not be modified.
;
DELIX(DIFIL,DIFLD,DIXR,DIFLG,DIKDOUT,DIKDMSG) ;Delete traditional xref
G DELIXX^DIKD
;
DELIXN(DIFIL,DIXR,DIFLG,DIKDOUT,DIKDMSG) ;Delete new-style index
G DELIXNX^DIKD2
;
CREIXN(DIKCXREF,DIFLG,DIXR,DIKCOUT,DIKCMSG) ;Create new-style index
G CREIXNX^DIKCR
;
FILESEC(DIFIL,DISEC,DIMSGA) ;Set File Security Codes
; DIFIL = File Number
; .DISEC = Is the array for each security node
; DIMSGA = If passed where the error message is placed
I (('$D(^DIC(+$G(DIFIL),0))#2)!(+$G(DIFIL)<2)) D Q
. D CLEAN^DILF
. I $G(DIMSGA)'="" D BLD^DIALOG(401,+$G(DIFIL),,DIMSGA,"F") Q
. D BLD^DIALOG(401,+$G(DIFIL))
I '$D(DISEC) Q
N I
; DIC(DIFIL,0,"DD") 'Data Dictionary' Security
; DIC(DIFIL,0,"RD") 'Read' Security
; DIC(DIFIL,0,"WR") 'Write' Security
; DIC(DIFIL,0,"DEL") 'Delete' Security
; DIC(DIFIL,0,"LAYGO") 'Laygo' Security
; DIC(DIFIL,0,"AUDIT") 'Audit Security
F I="DD","RD","WR","DEL","LAYGO","AUDIT" I $D(DISEC(I))#2 S ^DIC(DIFIL,0,I)=DISEC(I)
Q
DDMOD ;SFISC/MKO-DD MODIFICATION APIS ;1:45 PM 11 Dec 2001 [ 12/09/2003 4:43 PM ]
+1 ;;22.0;VA FileMan;**12,53,95,1002**;Mar 30, 1999
+2 ;Per VHA Directive 10-93-142, this routine should not be modified.
+3 ;
DELIX(DIFIL,DIFLD,DIXR,DIFLG,DIKDOUT,DIKDMSG) ;Delete traditional xref
+1 GOTO DELIXX^DIKD
+2 ;
DELIXN(DIFIL,DIXR,DIFLG,DIKDOUT,DIKDMSG) ;Delete new-style index
+1 GOTO DELIXNX^DIKD2
+2 ;
CREIXN(DIKCXREF,DIFLG,DIXR,DIKCOUT,DIKCMSG) ;Create new-style index
+1 GOTO CREIXNX^DIKCR
+2 ;
FILESEC(DIFIL,DISEC,DIMSGA) ;Set File Security Codes
+1 ; DIFIL = File Number
+2 ; .DISEC = Is the array for each security node
+3 ; DIMSGA = If passed where the error message is placed
+4 IF (('$DATA(^DIC(+$GET(DIFIL),0))#2)!(+$GET(DIFIL)<2))
Begin DoDot:1
+5 DO CLEAN^DILF
+6 IF $GET(DIMSGA)'=""
DO BLD^DIALOG(401,+$GET(DIFIL),,DIMSGA,"F")
QUIT
+7 DO BLD^DIALOG(401,+$GET(DIFIL))
End DoDot:1
QUIT
+8 IF '$DATA(DISEC)
QUIT
+9 NEW I
+10 ; DIC(DIFIL,0,"DD") 'Data Dictionary' Security
+11 ; DIC(DIFIL,0,"RD") 'Read' Security
+12 ; DIC(DIFIL,0,"WR") 'Write' Security
+13 ; DIC(DIFIL,0,"DEL") 'Delete' Security
+14 ; DIC(DIFIL,0,"LAYGO") 'Laygo' Security
+15 ; DIC(DIFIL,0,"AUDIT") 'Audit Security
+16 FOR I="DD","RD","WR","DEL","LAYGO","AUDIT"
IF $DATA(DISEC(I))#2
SET ^DIC(DIFIL,0,I)=DISEC(I)
+17 QUIT