UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORFEATURE
Returns a table of ConstituentIDs for which the user has been granted the feature according to the role security groups.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@APPUSERID | uniqueidentifier | IN | |
@FEATUREID | uniqueidentifier | IN | |
@FEATURETYPE | tinyint | IN |
Definition
Copy
create function dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORFEATURE
(
@APPUSERID uniqueidentifier,
@FEATUREID uniqueidentifier,
@FEATURETYPE tinyint
)
returns @CONSTITUENTS table(ID uniqueidentifier) as
/*
Returns a row for every constituent that the the user has rights to according to record access security.
This function is optimized for use from the Blackbaud.AppFx.Security.Catalog.ConstitRecordSecurityService
class which implements the RecordSecurity service for Constituent record security.
As such, it assumes that a check for DENY occurs outside this function
and also assumes that a check for if the user is ISSYSADMIN occurs outside
this function.
It also assumes a check for UFN_SECURITY_APPUSER_GRANTED_FEATURE_IN_NONRACROLE
occurs outside this function. If that function returns true there is no need to join to this TVF.
*/
begin
if @FEATURETYPE = 1 -- SecurityFeatureType.Form
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORFORM(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 2 -- SecurityFeatureType.DataList
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORDATALIST(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 4 -- SecurityFeatureType.BusinessProcess
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORBUSINESSPROCESS(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 5 -- SecurityFeatureType.Dashboard
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORDASHBOARD(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 8 -- SecurityFeatureType.Task
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORTASK(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 9 -- SecurityFeatureType.SmartQuery
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORSMARTQUERY(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 10 -- SecurityFeatureType.AdHocQueryView
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORQUERYVIEW(@APPUSERID,@FEATUREID)
end
if @FEATURETYPE = 15 -- SecurityFeatureType.Batch
begin
insert into @CONSTITUENTS
select ID from dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITIDS_FORBATCH(@APPUSERID,@FEATUREID)
end
-- if @FEATURETYPE = 11 -- SecurityFeatureType.BatchType
-- if @FEATURETYPE = 12 -- SecurityFeatureType.AddCodeTableEntry
-- if @FEATURETYPE = 13 -- SecurityFeatureType.UpdateCodeTableEntry
-- if @FEATURETYPE = 14 -- SecurityFeatureType.DeleteCodeTableEntry
-- if @FEATURETYPE = 16 -- SecurityFeatureType.BatchTemplate
-- if @FEATURETYPE = 17 -- SecurityFeatureType.Kpi
-- if @FEATURETYPE = 18 -- SecurityFeatureType.MergeTask
-- if @FEATURETYPE = 19 -- SecurityFeatureType.SmartField
-- if @FEATURETYPE = 20 -- SecurityFeatureType.GlobalChange
-- if @FEATURETYPE = 21 -- SecurityFeatureType.ReportParameter
-- if @FEATURETYPE = 22 -- SecurityFeatureType.SystemPrivilege
-- if @FEATURETYPE = 23 -- SecurityFeatureType.ConfigurationData
-- if @FEATURETYPE = 24 -- SecurityFeatureType.BatchTemplateCustomize
-- if @FEATURETYPE = 25 -- SecurityFeatureType.BatchProcessor
-- if @FEATURETYPE = 26 -- SecurityFeatureType.Page
return;
end