STANDARD DATA DICTIONARY #1.62 -- POLICY FUNCTION FILE 3/24/25 PAGE 1 STORED IN ^DIAC(1.62, (7 ENTRIES) SITE: WWW.BMIRWIN.COM UCI: VISTA,VISTA (VERSION 22.2) DATA NAME GLOBAL DATA ELEMENT TITLE LOCATION TYPE ----------------------------------------------------------------------------------------------------------------------------------- This file contains the functions needed to support evaluation of data access Policies in file #1.6. See the VA FileMan Programmer Manual for full details of local variables available to use, and output requirements of each type. Attribute functions may use variables such as the current file (DIFN) and record number (DIENS) to set DIVAL("attribute")="value" with the attributes that will be needed to evaluate the policy. Condition functions often look beyond the record, at a user's keys or role for example, and should return a boolean result in Y. Result functions may look at the DIRESULT variable, if it is set to P or D, and should return a boolean value in Y indicating if processing is done. Obligation functions may perform any tasks needed by the application, such as logging access granted to a file, and do not need to return a value. DD ACCESS: @ WR ACCESS: # DEL ACCESS: @ LAYGO ACCESS: # IDENTIFIED BY: TYPE (#.03) POINTED TO BY: ATTRIBUTE FUNCTION field (#.04) of the POLICY File (#1.6) RESULT FUNCTION field (#.07) of the POLICY File (#1.6) DENY FUNCTION field (#7) of the POLICY File (#1.6) PERMIT FUNCTION field (#8) of the POLICY File (#1.6) FUNCTION field (#.02) of the CONDITIONS sub-field (#1.603) of the POLICY File (#1.6) CROSS REFERENCED BY: NAME(B) LAST MODIFIED: AUG 30,2017@14:48:40 1.62,.001 NUMBER NUMBER INPUT TRANSFORM: K:+X'=X!(X>9999999)!(('$G(DIFROM))&(X<1001))!(X?.E1"."1N.N) X LAST EDITED: NOV 28, 2016 HELP-PROMPT: Type a number between 1001 and 9999999, 0 decimal digits. DESCRIPTION: This is a number that uniquely identifies the function. Values less than 1000 are reserved for FileMan use. NOTES: XXXX--CAN'T BE ALTERED EXCEPT BY PROGRAMMER 1.62,.01 NAME 0;1 FREE TEXT (Required) INPUT TRANSFORM: D CHKNAME^DIACX(1.62) I $D(X) K:$L(X)>30!($L(X)<3)!'(X'?1P.E) X MAXIMUM LENGTH: 30 LAST EDITED: NOV 30, 2016 HELP-PROMPT: Enter a unique name, 3-30 characters, beginning with the package namespace. DESCRIPTION: The formal unique name of the function, prefaced with the package namespace specified in the PACKAGE file, or the letter Z or A. DELETE TEST: 1,0)= I DA<1000 NOTES: XXXX--CAN'T BE ALTERED EXCEPT BY PROGRAMMER CROSS-REFERENCE: 1.62^B 1)= S ^DIAC(1.62,"B",$E(X,1,30),DA)="" 2)= K ^DIAC(1.62,"B",$E(X,1,30),DA) 1.62,.02 DISPLAY NAME 0;2 FREE TEXT INPUT TRANSFORM: K:$L(X)>30!($L(X)<3) X MAXIMUM LENGTH: 30 LAST EDITED: JUL 07, 2016 HELP-PROMPT: Answer must be 3-30 characters in length. DESCRIPTION: This is the name of the function as it should be displayed to the user in the Policy Editor. 1.62,.03 TYPE 0;3 SET 'A' FOR ATTRIBUTE; 'C' FOR CONDITION; 'R' FOR RESULT; 'O' FOR OBLIGATION; LAST EDITED: NOV 15, 2016 HELP-PROMPT: Select the type or usage of this function. DESCRIPTION: This field indicates the expected usage of this function; it will be used to screen potential selections for the various function fields of a policy in the Policy Editor. 1.62,.04 NULL VALUE 0;4 SET 'P' FOR PERMIT; 'D' FOR DENY; LAST EDITED: AUG 03, 2016 HELP-PROMPT: For Result functions, select the value to return in place of null. DESCRIPTION: This field is only used with Result functions, when a specific result must be returned for the policy; if a permit or deny result could not be determined for the policy or set, the value saved in this field will be returned as the result. It is recommended to use result functions with a null value with top-level policies, otherwise processing logic within a policy could be inadvertently altered. 1.62,1 EXECUTE CODE 1;E1,245 MUMPS INPUT TRANSFORM: K:$L(X)>245 X D:$D(X) ^DIM LAST EDITED: JUL 07, 2016 HELP-PROMPT: This is Standard MUMPS code. DESCRIPTION: This is the M code that will be executed for this function. See the VA FileMan Programmer Manual for full details on available variables and expected output. Attribute functions should set any needed record elements in the DIVAL("attribute")="value" array; Condition and Result functions should return a boolean value in Y. Obligation functions may perform any tasks needed by the application. WRITE AUTHORITY: @ 1.62,2 DESCRIPTION 2;0 WORD-PROCESSING #1.622 (IGNORE "|") DESCRIPTION: This field contains a brief description of the function; it should include any input variables required, the expected output, and any possible error messages. LAST EDITED: AUG 03, 2016 HELP-PROMPT: Enter a description of this function, including input and output variables. DESCRIPTION: This field contains a brief description of the function; it should include any input variables required, the expected output, and any possible error messages. INPUT TEMPLATE(S): PRINT TEMPLATE(S): SORT TEMPLATE(S): FORM(S)/BLOCK(S):