VistA Analysis » VistA Reference » RPCs » DG SENSITIVE RECORD ACCESS

DG SENSITIVE RECORD ACCESS

This Remote Procedure Call (RPC) will: - Verify user is not accessing his/her own Patient file record ifthe Restrict Patient Record Access (#1201) field in the MAS parameters(#43) file is set to yes and the user does not hold the DG RECORD ACCESSsecurity key. If parameter set to yes and user is not a key holder , asocial security number must be defined in the New Person file for the userto access any Patient file record. - Determine if user accessing a sensitive record or an employee’srecord.

Properties

Property Value
Label PTSEC
MUMPS Implementation DGSEC4
Return Type ARRAY

Input Parameters

Name Type Maximum Data Length Required Description
DFN LITERAL   true DFN = Patient (#2) file DFN.
DGMSG LITERAL 1 true DGMSG = 1 - if message should be generated when a user's SSN is undefined 0 - message will not be generated If not defined, defaults to 1.
DGOPT LITERAL   true Contains Option name^Menu text for DG Security Log update.

MUMPS Method Description

Property Value
Method PTSEC^DGSEC4
Method Comment RPC/API entry point for patient sensitive & record access checks
Input Parameters DFN, DGMSG, DGOPT
First Comment
Output array (Required)
RESULT(1)= -1-RPC/API failed
Required variable not defined
0-No display/action required
Not accessing own, employee, or sensitive record
1-Display warning message
Sensitive and DG SENSITIVITY key holder
or Employee and DG SECURITY OFFICER key holder
2-Display warning message/require OK to continue
Sensitive and not a DG SENSITIVITY key holder
Employee and not a DG SECURITY OFFICER key holder
3-Access to record denied
Accessing own record
4-Access to Patient (#2) file records denied
SSN not defined
RESULT(2-10) = error or display messages

Input parameters: DFN = Patient file entry (Required)
DGMSG = If 1, generate message (optional)
DGOPT = Option name^Menu text (Optional)
Code
 K RESULT
I $G(DFN)="" D Q
.S RESULT(1)=-1
.S RESULT(2)="Required variable missing."
S DGMSG=$G(DGMSG)
D OWNREC(.RESULT,DFN,$G(DUZ),DGMSG)
I RESULT(1)=1 S RESULT(1)=3 Q
I RESULT(1)=2 S RESULT(1)=4 Q
K RESULT
D SENS(.RESULT,DFN,$G(DUZ))
I RESULT(1)=1 D
.I $G(DUZ)="" D Q
..;DUZ must be defined to access sensitive record & update DG Security log
..S RESULT(1)=-1
..S RESULT(2)="Your user code is undefined. This must be defined to access a restricted patient record."
.D SETLOG1^DGSEC(DFN,DUZ,,$G(DGOPT))

CPRS

File Type Description
Pascal File rCore.pas


Document generated on August 31st 2022, 2:55:43 pm