LHS CHECK OPTION ACCESS

TITLEVALUE
NAMELHS CHECK OPTION ACCESS
DESCRIPTIONThis RPC uses the Kernel supported API $$ACCESS^XQCHK to verify if a
VistA user has access to an option or not.
TAGOPT
ROUTINELHSRPC
INPUT PARAMETERSSEQUENCE NUMBER1
INPUT PARAMETERUSER
DESCRIPTIONThis is the user DUZ being checked for option access.
PARAMETER TYPELITERAL
REQUIREDYES
MAXIMUM DATA LENGTH20

INPUT PARAMETERSSEQUENCE NUMBER2
INPUT PARAMETEROPTION
DESCRIPTIONThis is either the IEN or the NAME of an option in the OPTION file #19.
PARAMETER TYPELITERAL
REQUIREDYES
MAXIMUM DATA LENGTH

RETURN VALUE TYPESINGLE VALUE
RETURN PARAMETER DESCRIPTIONThe return data is the same as the Kernel API $$ACCESS^XQCHK supported
through ICR #10078.

-1:no such user in the New Person File
-2: User terminated or has no access code
-3: no such option in the Option File
0: no access found in any menu tree the user owns

All other cases return a 4-piece string stating
access ^ menu tree IEN ^ a set of codes ^ key

O^tree^codes^key: No access because of locks (see XQCODES below)
where 'tree' is the menu where access WOULD be allowed
and 'key' is the key preventing access
1^OpIEN^^: Access allowed through Primary Menu
2^OpIEN^codes^: Access found in the Common Options
3^OpIEN^codes^: Access found in top level of secondary option
4^OpIEN^codes^: Access through a the secondary menu tree OpIEN.

XQCODES can contain:
N=No Primary Menu in the User File (warning only)
L=Locked and the user does not have the key (forces 0 in first piece)
R=Reverse lock and user has the key (forces 0 in first piece)
AVAILABILITYRESTRICTED
INACTIVE
CLIENT MANAGER
WORD WRAP ON
VERSION
SUPPRESS RDV USER SETUP
APP PROXY ALLOWEDYes