project BLF > class BUserRole > business logic query ResourceMatrixByUser

Description

Make a list of all resources accessible by a specific user, excluding resources that cannot be used SOD.


Parameters


iiCompanyIdintegerCompany id
iiUsrIDinteger
iiDomainIDinteger
iiSODCategoryIDinteger


query condition


  each UsrRoleCompany where
UsrRoleCompany.Company_Id = iiCompanyId AND
UsrRoleCompany.Usr_ID = iiUsrID AND
UsrRoleCompany.Domain_ID = iiDomainID

      first Company (inner-join) where
Company.Company_Id = iiCompanyId AND
Company.Company_ID = UsrRoleCompany.Company_ID AND

      first Domains (inner-join) where
Domains.Domain_ID = UsrRoleCompany.Domain_ID AND

      first Role (inner-join) where
Role.Role_ID = UsrRoleCompany.Role_ID AND
Role.RoleSODException = false

          each RoleResource (inner-join) where
RoleResource.Role_ID = Role.Role_ID AND

              first Resources (inner-join) where
Resources.Resource_ID = RoleResource.Resource_ID AND
Resources.SODcategory_ID = iiSODCategoryID AND
Resources.SODcategory_ID <> 0


query resultset tqResourceMatrixByUser


field namedata typedb fielddescription
tiCompany_IDintegerCompany.Company_IDRecord ID
tcCompanyCodecharacterCompany.CompanyCodeEntity Code
tiDomain_IDintegerDomains.Domain_IDRecord ID
tcDomainCodecharacterDomains.DomainCodeDomain
tiResource_IDintegerResources.Resource_IDRecord ID
tcResourceURIcharacterResources.ResourceURIUniversal Resource Identification
tiRole_IDintegerRole.Role_IDRecord ID
tcRoleNamecharacterRole.RoleNameRole Name
tiSODcategory_IDintegerResources.SODcategory_IDSegregation of Duties Category reference
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(UsrRoleCompany),rowid(Company),rowid(Domains),rowid(Role),rowid(RoleResource),rowid(Resources)


Internal usage


BLF
method BSODPolicyException.AdditionalUpdates