DDMOD ;SFISC/MKO-DD MODIFICATION APIS ;1:45 PM 11 Dec 2001
;;22.2;VA FileMan;;Jan 05, 2016;Build 42
;;Per VA Directive 6402, this routine should not be modified.
;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
;;Licensed under the terms of the Apache License, Version 2.0.
;
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
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HDDMOD 1358 printed Oct 16, 2024@18:43:18 Page 2
DDMOD ;SFISC/MKO-DD MODIFICATION APIS ;1:45 PM 11 Dec 2001
+1 ;;22.2;VA FileMan;;Jan 05, 2016;Build 42
+2 ;;Per VA Directive 6402, this routine should not be modified.
+3 ;;Submitted to OSEHRA 5 January 2015 by the VISTA Expertise Network.
+4 ;;Based on Medsphere Systems Corporation's MSC FileMan 1051.
+5 ;;Licensed under the terms of the Apache License, Version 2.0.
+6 ;
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