SQL-024: Retrieve all possible access groups for a user type
Retrieves all access groups defined for a user type code, LEFT-joining to existing EXT_USER_ACCESS_GROUP rows so that both assigned and unassigned groups are returned with their current assignment state.
Classification
Field
Value
SQL ID
SQL-024
Operation type
Read
Execution method
Inline SQL
Database
Oracle
Schema
[unqualified]**
Command type
Text
Business object
clsUserAccessGroup
Criteria property
Local SQL
Lifecycle method
GetAllPossibleUserAccessGroups
Parameters
Parameter
Direction
Type
Max length
Description
:UserTypeID
Input
Decimal
N/A
EXT_USER_TYPE_SEQ_NUM for the LEFT JOIN.
:UserTypeCode
Input
String
5
User type code to filter access group definitions.
:CultureCode
Input
String
5
Culture code for globalized description.
Tables
Sample SQL
SELECT
CASE WHEN a . ext_user_access_group_seq_num IS NULL
THEN 0 ELSE a . ext_user_access_group_seq_num
END AS UserAccessGroupID ,
: UserTypeID AS UserTypeID ,
tag . ext_user_type_code AS UserTypeCode ,
agc . CODE AS AccessGroupCode ,
agc . code_descr AS AccessGroupDescription ,
a . EXPIRATION_DATE AS ExpirationDate ,
a . DEFAULT_ACCESS_FLAG AS IsDefaultAccess ,
tag . ADMIN_ACCESS_FLAG AS CanAdminAccess ,
tag . STEWARD_ACCESS_FLAG AS CanStewardAccess ,
tag . SELF_REG_ACCESS_FLAG AS CanSelfRegistrationAccess ,
tag . SYSTEM_CONTROLLED_FLAG AS IsControlledBySystem ,
tag . DEFAULT_STATUS_FLAG AS DefaultStatus ,
tag . SORT_ORDER_NUM AS SortOrder ,
a . CREATE_USER AS CreateUser ,
a . CREATE_DATE AS CreateDate ,
a . UPDATE_USER AS UpdateUser ,
a . UPDATE_DATE AS UpdateDate ,
a . UPDATE_NUM AS UpdateNum ,
'<AccessType>' AS AccessType
FROM ext_user_type_access_group tag
JOIN ext_user_access_group_code agc
ON tag . ext_user_access_group_code = agc . code
LEFT JOIN ext_user_access_group a
ON a . ext_user_access_group_code = agc . code
AND a . ext_user_type_seq_num = : UserTypeID
LEFT OUTER JOIN ext_user_access_group_gcode aggc
ON ( agc . code = aggc . code AND upper ( AGGC . CULTURE_CODE ) = : CultureCode )
WHERE upper ( tag . ext_user_type_code ) = : UserTypeCode
ORDER BY tag . SYSTEM_CONTROLLED_FLAG , tag . SORT_ORDER_NUM
Operations and processes
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.
Sources
Business\SAIF.Business.External.Users\clsUserAccessGroup.vb